213
5
장
마이크로서비스의 통신 구현
다. 대체로 이러한 사용 예는 모두
서비스 디스커버리서비스 디스커버리
service
discovery
라는 분야에 속한다. 그리고 마
이크로서비스에서는 항상 그렇듯이 서비스 디스커버리를 다루는 다양한 선택지가 있다.
우리가 살펴볼 모든 솔루션은 두 부분으로 처리된다. 첫째, 인스턴스가 스스로 등록하고 “나 여
기 있어요!”라고 말하는 메커니즘을 제공한다. 둘째, 등록된 서비스를 찾는 방법을 제공한다.
하지만 새로운 인스턴스를 지속적으로 폐기하고 배포하는 환경을 생각하면 서비스 디스커버리
는 더욱 복잡해진다. 이상적으로는 이 문제를 대처하려고 선택한 솔루션이라면 무엇이든 원할
것이다.
서비스 제공을 위한 가장 일반적인 솔루션을 살펴보고 우리의 선택지들을 고려해보자.
5.9.15.9.1
도메인 네임 시스템(도메인 네임 시스템(
DNSDNS
))
간단하게 시작하는 것이 좋다.
DNS
를 사용하면 이름을 하나 이상의 컴퓨터
IP
주소와 연결할
수 있다. 예를 들어 계정 마이크로서비스는 항상
accounts
.
musiccorp
.
net
에서 찾을 수 있게
된다. 그런 다음 해당 마이크로서비스가 실행 중인 호스트의
IP
주소에 대한 엔트리 포인트나
여러 인스턴스에 부하를 분산하는 로드 밸런서로 확인하도록
resolve
할 수 있다. 서비스 배포의
일부로 이러한 항목을 처리해야 한다는 의미다.
다양한 환경에서 서비스의 인스턴스들을 처리할 때는 관례
convention
기반의 도메인 템플릿
이 효과가 있다는 사실을 직접 ...