Kafka vs RabbitMQ
Выбирая между Kafka и RabbitMQ
На самом деле, категорично сравнивать брокеры сообщений очень сложно. У всех существуют свои задачи и области применения. В случае с Apache Kafka и RabbitMQ это немного разный уровень, где лучшего не существует.
Kafka используется для обработки больших объёмов данных, сотен тысяч сообщений в секунду, которые подолгу хранятся на диске и много раз читаются сотнями или даже тысячами подписчиков. Kafka — это легко масштабируемая система, обладающая повышенной отказоустойчивостью, что очень важно в крупных проектах.
RabbitMQ более простой в установке и настройке, успешно справляется с асинхронным обменом данными в микросервисной архитектуре. Не требует дополнительных компонентов и затрат на дисковые ресурсы, так как все сообщения после чтения из очереди удаляются. По сравнению с Kafka обладает большими возможностями по настройке шаблонов обмена сообщениями. Отличный выбор, если нет завышенных требований к отказоустойчивости и пропускной способности.
Простота установки
-
+
Объем данных
Большой, сотни тысяч сообщений в секунду
Небольшой
Обмен информацией
Pub-Sub
Pub-Sub и Point-to-Point
Гарантия доставки
At most once / At least once / Exactly once
At most once / At least once
Повышенная отказоустойчивость
+
-
Процесс распределения сообщений на стороне брокера
-
+
Источник: https://habr.com/ru/companies/innotech/articles/698838/
Last updated