동기 통신 - AWS 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

동기 통신

동기 통신에서는 다음 다이어그램과 같이 클라이언트가 서비스에 요청을 시작합니다. 예를 들어 정보를 가져오는 요청(HTTP GET 요청)이나 데이터를 변경하는 요청(HTTP PUT 요청)이 이에 해당합니다. 두 경우 모두 클라이언트는 서버가 응답할 때까지 기다린 후 다음 작업을 진행합니다. 동기 호출은 대부분의 개발자에게 익숙하며, 구현과 문제 해결이 쉽고, 많은 경우 통신 표준으로 널리 사용됩니다.

클라이언트와 마이크로서비스 간, 또는 마이크로서비스와 마이크로서비스 간의 동기 통신

동기 통신의 장점은 다음과 같습니다.

  • 예측 가능한 흐름 제어 – 비동기 통신에 비해 결정론적 실행과 명확한 요청-응답 주기를 제공하여 이해하기 쉽습니다.

  • 강력한 일관성 - 데이터 변경과 상태 업데이트를 즉시 확인할 수 있습니다.

  • 간단한 오류 처리 – 오류와 예외를 직접 전파할 수 있습니다.

  • 쉬운 디버깅 – 요청 추적과 모니터링이 간단합니다.

  • 프로토콜 지원 – HTTP, REST와 같은 잘 확립된 프로토콜을 사용하여 구현이 용이합니다.

동기 통신의 단점은 다음과 같습니다.

  • 긴밀한 결합 – 서비스가 서로의 가용성에 직접적으로 의존합니다.

  • 네트워크 영향 – 지속적인 연결로 인해 네트워크 부하가 증가합니다.

  • 리소스 사용 – 연결 상태를 유지하면서 메모리 사용량이 증가합니다.

  • 연쇄적 장애 – 한 서비스에 생긴 문제가 시스템 전체에 빠르게 전파될 수 있습니다.