정의
- 서비스 클라이언트가 서비스 호출을 위해 IP주소, Port를 알아내는 기능
- 사용 이유
- MSA에서 분산된 서비스간의 원격 호출과 클라우드 환경에서 오토 스케일링 등의 동적 환경으로 서비스의 IP 변동이 잦아짐 - 동작 (Client side discovery)
- 서비스 인스턴스 생성시 주소를 Service Registry에 등록
- 해당 서비스 호출시 클라이언트는 Service Registry에 주소를 물어보고 호출
Client side discovery vs Server side discovery
- Client side discovery
- 클라이언트가 Service Registry에서 서비스 위치를 찾아 호출하는 방식
- Server side discovery
- proxy(LB)가 호출을 받고 LB에서 Service Registry에 주소를 받아 호출하는 방식
Service Registry
- 구현
- Zookeeper나 etcd같은 서비스 사용
- Netfilx의 Eureka, Hashcorp의 Consul같은 서비스 사용
'데이터 엔지니어링 > 클라우드' 카테고리의 다른 글
[초밀착 리눅스] 1. 리눅스 기반 컨테이너 개발 환경 구축 (0) | 2022.09.19 |
---|---|
[클라우드] 배포 전략 (인플레이스, 롤링, 블루/그린, 카나리) (0) | 2022.05.16 |
[클라우드] 마이크로서비스 아키텍처 (0) | 2022.05.10 |
[클라우드] 클라우드 컴퓨팅 구분 (0) | 2022.05.08 |
[클라우드] 컨테이너 기술이란 (0) | 2022.05.08 |