RabbitMQ
- 메시지를 생산자(Producer)로부터 받아 큐에 저장하고, 이를 소비자(Consumer)가 관리.
- 메시지가 처리되면 큐에서 제거됨(일회성 메시지 처리).
- AMQP (Advanced Message Queuing Protocol) 표준을 따름.
Kafka
- 메시지를 토픽으로 저장하며, 파일 시스템 기반의 로그 관리.
- 메시지는 여러 소비자가 독립적으로 읽을 수 있음.
- 메시지는 제거되지 않고, 지정된 기간 동안 유지.
특징 | RabbitMQ | Kafka |
메시지 전달 방식 | Push (브로커가 소비자에게 전달) | Pull (소비자가 직접 가져감) |
메시지 보관 | 처리 후 큐에서 삭제됨 | 토픽에 로그 형태로 저장, 유지기간 동안 재처리 가능 |
메시지 순서 보장 | 큐 단위에서만 보장 | 파티션 단위에서 보장 |
내구성 | 디스크 또는 메모리에 저장 가능 | 디스크에 지속적으로 기록 (고신뢰성) |
'Kafka' 카테고리의 다른 글
spring kafka vs apache kafka (0) | 2024.12.10 |
---|