Kafka versus RabbitMQ, A comparative study of two industry reference publish/subscribe implementations

19 June 2017

New Image

Apache Kafka and RabbitMQ are two popular publish/subscribe implementations that can be used when a multitude of data streams need to be connected between a set of producers and a set of con- sumers. They have some functional and non-functional features in common, which encourages software architects to compare them head to head. They also have unique features not found in the alternative architecture, which means that a choice will always be driven by considerations of the application(s) that use these compo- nents. This paper explores these features and provides details. We will also present some use cases, and indicate how specifc use cases align with either of the two studied systems. Finally, we guide the reader in making his own choice based on a determination table.