더북(TheBook)

3.4.1 동기 통신으로 인한 가용성 저하

REST는 너무나 대중적이라서 끌리는 IPC이지만, 동기 프로토콜이라는 치명적인 문제점이 있습니다. 즉, 호출한 서비스가 응답할 때까지 HTTP 클라이언트가 마냥 기다려야 하죠. 따라서 서비스가 동기 프로토콜로 통신하면 그만큼 애플리케이션 가용성은 저하될 수밖에 없습니다.

그림 3-15를 봅시다. 주문 생성 REST API를 제공하는 주문 서비스는 유효한 주문인지 확인하기 위해 소비자 서비스, 음식점 서비스를 호출합니다. 소비자/음식점 서비스 역시 REST API를 제공합니다.

▲ 그림 3-15 주문 서비스는 다른 서비스를 그냥 REST 호출한다. 방법은 가장 직관적이지만 모든 서비스가 동시에 가용해야 한다는 전제가 필요하기 때문에 API 가용성이 떨어진다

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.