메시지 큐(Message Queue) 개념 정리
my code archive
article thumbnail
반응형

메시지큐란

비동기 방식으로 데이터(메시지)를 송수신하는 시스템. 여러 프로세스나 애플리케이션 간 데이터를 교환할 때 중간에서 큐(Queue) 형태로 메시지를 저장하고 수신자가 이를 꺼내서 처리할 수 있도록 한다.

 

메시지큐 핵심 개념

1. Producer(생산자) : 메시지를 생성하여 큐에 넣는 역할

2. Queue(큐) : 메시지를 임시로 저장하는 공간 (FIFO 구조)

3. Consumer(소비자) : 큐에서 메시지를 가져와 처리하는 역할

4. Broker(중앙 관리자) : 메시지를 큐에서 적절히 관리하고 분배하는 시스템

 

메시지큐의 장점

✅ 비동기 처리 : 프로세스가 즉시 응답할 필요 없이 작업을 분배하고 처리 가능

✅ 분산 시스템 지원 : 여러 개의 소비자가 메시지를 처리할 수 있어 부하 분산

✅ 내결합성(Fault Tolerance) : 메시지가 손실되지 않고 보장되도록 설계 가능

✅ 확장성 : 시스템이 확장되더라도 큐를 활용해 안정적으로 트래픽을 처리

 

메시지큐를 활용하는 경우

  • 이메일, 알림 시스템 : 사용자가 작업을 완료하면 비동기적으로 알림 전송
  • 주문 처리 시스템 : 주문을 큐에 넣고 백그라운드에서 순차적으로 처리
  • 비디오 인코딩 : 대량의 비디오 변환 작업을 분산 처리

대표적인 메시지 큐 솔루션

메시지 큐 시스템 특징
RabbitMQ AMQP 기반, 트렌잭션 지원, 플러그인 확장 가능
Apache Kafka 대용량 데이터 스트림 처리, 로그 처리, 이벤트 스트리밍에 강점
ActiveMQ 자바 기반, JMS(Java Message Service) 지원
Redis (Pub/Sub) 초고속 메시징, 캐싱과 함께 사용 가능
AWS SQS AWS에서 제공하는 완전 관리형 큐 서비스

 

참고 자료

📖 공식 문서

반응형
profile

my code archive

@얼레벌레 개발자👩‍💻

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

반응형