Message Queue(메시지 큐)
메시지를 보내는 쪽(생산자)과 받는 쪽(소비자) 사이에 두어, 받는 쪽이 바쁘거나 잠시 멈춰 있어도 메시지를 잃어버리지 않고 순서대로 안전하게 보관했다가 처리할 수 있게 해주는 대기열입니다.
한눈에 보는 정의
Message Queue(메시지 큐)는 메시지를 보내는 쪽과 받는 쪽 사이에 두어, 받는 쪽이 당장 처리하지 못해도 메시지를 순서대로 안전하게 보관해주는 대기열입니다.
자세히 알아보기
- 예문: "주문이 몰려 처리 시스템이 잠시 느려져도, Message Queue 덕분에 요청이 유실되지 않고 순서대로 쌓였다가 처리됐다."
- 보내는 쪽과 받는 쪽이 동시에 준비되어 있지 않아도 되며, 받는 쪽이 감당할 수 있는 속도로 하나씩 꺼내 처리하는 방식이라 트래픽이 몰려도 시스템이 갑자기 무너지는 것을 막아줍니다.
- Producer(데이터 생산자) (생산자)가 큐에 메시지를 넣으면 Consumer(데이터 소비자) (소비자)가 이를 꺼내가는 구조로, 두 시스템이 서로 직접 연결되지 않아도 되어 Event-Driven Architecture(이벤트 기반 아키텍처) (이벤트 기반 아키텍처)의 기본 구성 요소로 쓰입니다.
- 이런 메시지 큐 기능을 대규모로 안정적으로 제공하는 시스템을 Message Broker(메시지 브로커) (메시지 브로커)라고 부르며, Kafka(아파치 카프카) (Kafka)가 대표적입니다.