В чём разница между Kafka и RabbitMQ?

Kafka ориентирован на партиционированный журнал с offsets и повторным чтением, RabbitMQ — на брокерную маршрутизацию и очереди с подтверждениями. Это разные исходные модели, а не абсолютное разделение задач.

Короткий ответ

Что ответить на собеседовании

Kafka ориентирован на партиционированный журнал с offsets и повторным чтением, RabbitMQ — на брокерную маршрутизацию и очереди с подтверждениями. Это разные исходные модели, а не абсолютное разделение задач.

Подробный разбор

Ответ с пояснениями

Kafka ориентирован на партиционированный журнал с offsets и повторным чтением, RabbitMQ — на брокерную маршрутизацию и очереди с подтверждениями. Это разные исходные модели, а не абсолютное разделение задач.

В Kafka независимые группы читают сохранённые записи, а порядок определяется внутри партиции. В обычной очереди RabbitMQ сообщение после подтверждённой обработки удаляется; exchanges позволяют гибко направлять сообщения. При этом у RabbitMQ есть Streams, поэтому утверждение «RabbitMQ не умеет replay» слишком грубое. Сравнивайте retention, порядок, маршрутизацию, нагрузку, отказоустойчивость и операционную сложность. Оба инструмента требуют идемпотентных обработчиков и понимания подтверждений: ни один не делает внешние побочные эффекты exactly-once автоматически.

Источник: www.rabbitmq.com.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее