💻 my code archive/📝Etc.
메시지 큐(Message Queue) 개념 정리
얼레벌레 개발자👩💻
2025. 2. 3. 18:13
반응형
메시지큐란
비동기 방식으로 데이터(메시지)를 송수신하는 시스템. 여러 프로세스나 애플리케이션 간 데이터를 교환할 때 중간에서 큐(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에서 제공하는 완전 관리형 큐 서비스 |
참고 자료
📖 공식 문서
반응형