반응형
RabbitMQ, Redis, Kafka의 주요 특징 및 차이점
| 특징/기능 | RabbitMQ | Redis | Kafka |
| 메시지 패턴 | 메시지 큐 (Message Queue) | In-memory 데이터 구조 저장 및 캐싱 | 분산 스트리밍 플랫폼 |
| 메시지 프로토콜 | AMQP (Advanced Message Queuing Protocol) | - | Apache Kafka 프로토콜 |
| 특징 | - 메시지 브로커, 큐 및 패턴 지원 | - 높은 성능의 인메모리 데이터 스토어 | - 높은 처리량, 분산 로그 및 이벤트 스트리밍 |
| 주 사용 사례 | 비동기 통신, 이벤트 기반 아키텍처, 워크 플로우 | 캐싱, 세션 저장, 메시지 브로커 등 | 대규모 데이터 스트림 처리, 로그 집계 및 분석 |
| 지속성 | 메시지는 디스크에 저장 가능 (옵션) | 지속성을 위해 RDB 및 AOF 파일로 저장 | 메시지는 디스크에 지속적으로 저장 |
| 큐 유형 | Direct, Fanout, Topic 등 다양한 큐 유형 지원 | - | Topic 기반의 Publish-Subscribe 패턴 |
| 확장성 | 수직 및 수평 확장 가능 | 수직 확장 가능 | 분산 아키텍처로 수평 확장 가능 |
| 성능 | 일반적으로 높은 성능을 보임 | 뛰어난 읽기 및 쓰기 성능 | 높은 처리량 및 지연 시간이 낮은 성능 |
| 메시지 우선순위 | 지원됨 | 지원되지 않음 | 지원됨 |
| 사용 언어 | Erlang, Java, Python, 등 다양한 언어 지원 | 대부분의 언어를 지원 | Java, Scala, Python 등 다양한 언어 지원 |
반응형
'관련_배경_지식' 카테고리의 다른 글
| [소프트웨어 / 정처기] 화이트박스 테스트와 블랙박스 테스트 (0) | 2024.02.01 |
|---|---|
| DDos공격과 Dos공격의 종류와 차이점 (0) | 2024.01.17 |
| 클라우드 컴퓨팅이란? (6) | 2024.01.11 |
| 미드저니 파라미터 설명 (1) | 2023.12.29 |
| Java_Optional (0) | 2023.12.28 |