Ch2 - MSA 학습 (MSA 프로젝트 구조 및 흐름 복습)
배운 것
제공 받은 MSA 강의를 다 들었지만, 분산화된 서비스 애플리케이션을 연결하고 관리하는 기술들인 Eureka Server, API Gateway, Config Server 등을 어떻게 설정하고 흐름은 어떻게 되는지에 관한 개념들이 파편화 되어 있어서 오늘은 프로젝트를 만들어보면서 하나씩 연결하고 설정해보는 시간을 가졌다. 내일부터는 로컬환경에서 만든 프로젝트를 어떻게 관리하고 배포해야 하는지 공부하고 정리하면 좋을 것 같다.
클라이언트가 요청을 하고 응답을 받는 과정을 정리하면 다음과 같다.
1. 클라이언트가 API Gateway로 HTTP 요청을 보낸다.
2. API Gateway는 이 요청을 받아 처리하며, 요청 URL과 미리 설정된 라우팅 규칙을 비교한다.
3. Gateway는 Eureka Server에 등록된 서비스 목록을 조회하여 라우팅 규칙에 맞는 서비스 이름을 찾는다.
4. 해당 서비스의 여러 인스턴스 중 하나를 선택하는 클라이언트 사이드 로드 밸런싱을 수행한다. (이 때 로드밸런싱 알고리즘은 기본적으로 Round Robbin 방식이라고 했던 것 같다.)
5. 선택된 서비스 인스턴스로 요청을 전달하며, 필요한 경우 요청을 변형하거나 헤더를 추가할 수 있다. 대상 마이크로서비스가 요청을 처리한 후, 그 응답을 Gateway를 통해 클라이언트에게 전달한다.
하루 회고
오늘 잠깐 매니저님과 면담하는 시간을 가졌다. 잠깐의 면담을 통해 내가 단기심화를 신청한 목적에 대해서 공유하고 부합한 반을 선택할 수 있었다. 또한, 프로젝트를 진행하며 포트폴리오를 만드는 것뿐만 아니라, 내가 배운 기술을 다른 사람에게 설명할 수 있는 능력도 같이 키우면 좋겠다는 생각이 들었다. 첫 번째 프로젝트를 진행하면서 적용한 기술에 대한 설명을 잘 하지 못했다.
어떻게 전달할 것인가?
전달하는 방법은 다양하다. 단순히 말로 전달할 수도, 화면을 공유하거나 정리된 글을 통해서도 전달할 수 있을 것이다. 내가 배운 개념에 대해 먼저 고민하고 정리하면 좋겠다. 상대방의 필요한 부분이 무엇인지 파악을 하고 다양한 관점에서 설명할 수 있도록 연습이 필요할 것 같다.
4주차가 진행되고 주특기 숙련 주차라서 강의만 들으니까 조금 느슨해졌는데, 의미 있는 시간이었다.
'부트캠프 > 단기심화2기 TIL' 카테고리의 다른 글
[TIL] - ThreadLocal을 활용해 사용자 정보 관리하기 (0) | 2024.12.20 |
---|---|
[TIL] - Spring Cloud Gateway 적용하기 (0) | 2024.11.25 |
[TIL] - Microservice Architecture 프로젝트 만들기 (2) | 2024.11.22 |
[TIL] - Microservice Architecture 기본 학습 (0) | 2024.11.21 |
[TIL] - AI 검증 비즈니스 프로젝트 (프로젝트 발표 및 피드백 정리) (2) | 2024.11.19 |