작성
·
120
0
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요!
먼저 유사한 질문이 있었는지 검색해 보세요.
서로 예의를 지키며 존중하는 문화를 만들어가요.
안녕하세요! 모든 강의 수강하였고, 강의 내용을 기반으로 기존 작업한 프로젝트에 리팩토링을 진행하고 있습니다.
진행한 프로젝트는 MSA 기반으로, Swagger 를 사용하여 진행하였습니다.
서비스가 나눠져 있어, 각 서버별로 독립적인 문서를 가지고 있고, 개발자가 각 서버에 접근을 해야하는 문제가 있었습니다.
따라서 기존에는 Getway Server에 Swagger를 띄우고 각 서버를 discovery 서버에서 받아와서 api 호출을 통해 문서를 받아오게 하여 gateway에서 전체 문서를 열람 가능하게 하였습니다.
위와 같은 환경에서 동일하게, 단일 진입점으로 활용할 서버에 docs 설정을 통해 각 서버의 API 문서를 받아올
수 있게 구성하면 될까요? 아니면, 다른 방법이 있을까요? 현업에서 어떻게 구성하시는지 궁금합니다.
답변 2
0
안녕하세요, BeakGwa 님!
오 그렇게 구성하는 것도 좋다고 생각합니다! 👍
정답이 있는 것은 아닌데요. 서비스 특성에 맞게, 필요한 상황이라면 단일 진입점으로 구성하면 된다고 생각해요.
서버 별로 문서가 있는 것이 문제라고 표현주셨지만, 큰 문제라고 생각하지는 않아요. (보통은 바빠서 잘 못하고, 각 서버 별로 문서라도 있는 것이 다행일수도..)
편의를 제공하기 위해 시도해볼 수 있는 좋은 방법이라고 생각합니다 ㅎㅎㅎ
감사합니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다. BeakGwa님.
MSA 환경에서 Spring REST Docs를 이용해 단일 진입점에서 문서를 관리하는 방법에 대한 질문이시군요.
유사한 질문들을 기반으로 몇 가지 방안을 제시해 드리겠습니다:
단일 문서화 서버 사용:
각 서비스별로 Spring REST Docs를 사용하여 API 문서를 생성한 후, 이를 중앙의 문서화 서버로 통합할 수 있습니다. 이를 위해서는 문서화 서버에서 각 서비스의 문서 파일을 주기적으로 가져와서 통합하는 스크립트를 작성해야 합니다.
API Gateway를 활용한 문서 통합:
기존에 사용하셨던 방안처럼, API Gateway를 활용하여 각 서비스의 문서를 통합할 수 있습니다. 각 서비스에서 문서를 생성한 후, 이를 API Gateway 서버에서 수집하여 하나의 문서로 통합하는 방법이 있습니다. 이는 현재 운영 중인 시스템에 부드럽게 통합될 수 있는 장점이 있습니다.
독립적인 서비스별 문서화 유지:
서비스별로 문서를 유지하면서도 중앙 포털 형태로 접근할 수 있는 UI를 제공하는 방법입니다. 각 서비스의 문서는 독립적으로 관리되고, 중앙 포털에서는 링크를 제공하여 여러 문서로 쉽게 접근할 수 있도록 구성합니다.
아래는 유사한 질문들에 대한 답변을 참고 링크로 제공합니다:
- Spring Rest Docs 강의 질문이 있습니다
- Spring REST Docs 관련 질문
이 질문들이 MSA 환경에서 문서화 문제를 해결하는데 있어서 도움이 될 것입니다. 사용자의 구체적인 상황에 따라 최적의 방법을 선택하시면 좋겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.