[개발 상식] 메세지 큐란?

sqs_seo_queue.1dc710b63346bef869ee34b8a9a76abc014fbfc9.png
출처 : https://aws.amazon.com/ko/message-queue/

🤔메세지 큐가 뭐지?

메세지 큐는 메세지를 비동기적으로 송수신하는 기술로 시스템 간 통신에 사용되는 메시지 지향 미들웨어입니다. 여기서의 메시지는 요청, 응답, 오류 메시지 등의 정보입니다.

🤨메세지 큐의 작동 원리?

메세지 큐에는 다음과 같은 개념이 있습니다.

  1. 발신자(Sender) : 메시지 큐에 메시지를 생성하고 큐에 넣습니다.
  2. 큐(Queue) : 메시지가 저장되는 버퍼로, 발신자와 수신자 간에 중간 매개체 역할을 합니다.
  3. 수신자(Receiver) : 큐에서 메시지를 가져와서 처리합니다.

🤨그렇다면 메세지 큐를 왜 사용하지?

  1. 비동기 통신 : 발신자와 수신자간 의존성이 낮아 각각의 시스템이 독립적으로 동작할 수 있습니다.
  2. 메세지 유실 방지 : 메시지 큐를 사용하면 메모리를 이용하여 임시적으로 저장하는 시스템으로 빠른 응답 시간을 제공함과 동시에 메모리 전원이 꺼지며 데이터가 사라지는 것을 방지하기 위해 디스크에 영구적으로 보관되어 메시지 유실 가능성을 줄일 수 있습니다.
  3. 높은 확장성 : 여러 발신자와 수신자를 추가, 제거하여 확장성을 높일 수 있습니다.

이러한 장점으로 빠르고 안정적인 정보 전달이 가능하다!

😀메세지 큐가 사용되는 예시

  1. 이메일 : 대량의 이메일을 한번에 처리하는 것은 효율적이지 않습니다. 메세지 큐를 이용하여 비동기적으로 빠르게 처리하여 안정적으로 작동할 수 있습니다.
  2. 금융 시스템 : 빠른 거래 처리가 필요한 환경에서 메세지 큐가 사용됩니다. 빠르게 주문에 응답하여 시스템 통신에 따른 지연을 최소화 합니다.
  3. 실시간 채팅 시스템 : 여러 사용자가 동시에 채팅을 하면 많은 데이터가 발생합니다. 메세지 큐를 이용하여 효율적으로 처리할 수 있습니다.
  4. 항공 시스템 : 항공편 예약과 상태 알림, 운항 시스템 등 여러 데이터를 메세지 큐를 이용하여 빠르고 효율적으로 처리할 수 있습니다

메세지 큐의 빠르고 대량의 데이터를 안정적으로 처리할 수 있는 장점 덕분에 위와 같은 예시에서 많이 사용됩니다.

반응형