Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Apache Kafka vs RabbitMQ: Fit For Purpose / Decision Tree

13,200 views

Published on

Kafka as a streaming data platform is becoming the successor to traditional messaging systems such as RabbitMQ. Nevertheless, there are still some use cases where they could be a good fit. This one single slide tries to answer in a concise and unbiased way where to use Apache Kafka and where to use RabbitMQ. Your comments and feedback are much appreciated.

Published in: Data & Analytics

Apache Kafka vs RabbitMQ: Fit For Purpose / Decision Tree

  1. 1. Apache Kafka vs RabbitMQ: Fit For Purpose/Decision Tree Feature Kafka RabbitMQ Need a durable message store and message replay capability Y N Need ordered storage and delivery Y* N Need multiple different consumer of same data Y N Need to handle throughput of all my data well even at web scale and not a smaller set of messages Y N Need a high throughput with low latency Y N Need to decouple producers and consumers from a performance perspective to avoid the ’slow consumer problem’ Y N Need good integration with the Hadoop ecosystem and modern stream processing frameworks Y N Need a good buffer for batch systems to scale well to large backlogs Y N Need same tool for building data pipelines and streaming data applications without the help of additional software. Y N Need support for multiple protocols: AMQP, STOMP, JMS, MQTT, HTTP, JSON-RPC, … N Y Need message priority: producers can specify the priority of messages to consumers N Y Need explicit delivery processing acknowledgements of messages from consumers N Y Need flexible routing: producers direct messages to appropriate consumers N Y Need transaction support: provide commit and rollback functionality for local transactions N Y Need native tracing support to let me find out what's going on if things are misbehaving. N Y Need a browser-based UI for management and monitoring of my message brokers. N Y Need a self-sufficient message broker without additional tool such as Zookeeper N Y *At partition level. By @SlimBaltagi from Advanced Analytics LLC

×