OrderServiceProxy를 그냥 곧이곧대로 구현하면 응답을 기다리며 무한정 블로킹할 것입니다. UX 측면에서도 좋지 않지만, 스레드 같은 주요 리소스가 고갈되어서 결국 API 게이트웨이가 요청을 처리할 수 없게 되겠죠. 당연히 전체 API는 사용 불능 상태가 될 것입니다.
따라서 부분 실패가 애플리케이션 전체에 전파되지 않도록 서비스를 설계해야 합니다. 솔루션은 두 부분으로 나뉩니다.
• 무응답 원격 서비스를 처리하기 위해 OrderServiceProxy 같은 견고한 RPI 프록시를 설계합니다.
• 원격 서비스가 실패하면 어떻게 조치해야 할지 결정합니다.