Print
카테고리: [ Cloud Computing & MSA ]
조회수: 81889

왜 필요한가?

모놀리식 애플리케이션 - 단순하게 다른 메서드나 함수를 호출하면 됨.

마이크로서비스 애플리케이션 - 서비스 단위로 나뉘어진 분산 시스템이기 때문에 서비스 간 통신이 필요.

마이크로서비스 간의 통신을 프로세스 간 통신(inter-process communication)이라고 한다.


통신 방식

 

분류

 

One-to-One One-to-Many
Synchronous Request/response  — 
Asynchronous Notification Publish/subscribe
Request/async response Publish/async responses
 
  1. Request/Response : 요청을 보내고 응답이 올 때까지 기다린다.
  2. Notification : 요청을 보내기만 한다. (모바일 푸시 알림)
  3. Request/Async response : 요청을 보내면 비동기로 응답이 온다.
  4. Publish/Subscribe : 등록된 서비스들에 요청을 보낸다. 요청을 받은 서비스들은 각자 로직을 처리.
  5. Publish/Async response: 비동기 형태로 응답을 보낸다.

 

예시

A microservices-based taxi-hailing app can use a variety of communication methods: notification, request-response, publish-subscribe

참고

https://www.nginx.com/blog/building-microservices-inter-process-communication/