
199
5
장
마이크로서비스의 통신 구현
5.6.25.6.2
관대한 독자 관대한 독자
마이크로서비스 소비자가 구현되는 방식은 하위 호환되는 변경을 쉽게 만드는 데 많은 영향을
미칠 수 있다. 특히 클라이언트 코드가 마이크로서비스의 인터페이스와 너무 강하게 바인딩되
는 것은 피하고 싶다. 때때로 고객에게 이메일을 보내는 역할을 하는 이메일 (
Email
) 마이크로
서비스를 생각해보자.
ID
가
1234
인 고객에게 ‘주문 배송 완료’ 이메일을 발송하라는 요청이 왔
다. 작업이 시작되면 해당
ID
를 가진 고객을 검색하고 [예제
5
-
3
]에 표시된 내용을 수신한다.
예제
5-3
고객( 고객(
CustomerCustomer
) 서비스로부터 받은 응답 예) 서비스로부터 받은 응답 예
<customer>
<firstname>Sam</firstname>
<lastname>Newman</lastname>
<email>sam@magpiebrain.com</email>
<telephoneNumber>555-1234-5678</telephoneNumber>
</customer>
이제 이메일을 발송하려면 이메일 마이크로서비스에 이름, 성, 이메일 필드만 있으면 된다. 전
화번호는 필요 없으며, 관심 있는 필드만 빼고 나머지는 무시하고 싶다. 특히 강력한 타입 언어
에서 사용되는 일부 바인딩