English

Kafka versus RabbitMQ

Distributed, Parallel, and Cluster Computing 2017-09-04 v1 Performance

Abstract

Publish/subscribe is a distributed interaction paradigm well adapted to the deployment of scalable and loosely coupled systems. Apache Kafka and RabbitMQ are two popular open-source and commercially-supported pub/sub systems that have been around for almost a decade and have seen wide adoption. Given the popularity of these two systems and the fact that both are branded as pub/sub systems, two frequently asked questions in the relevant online forums are: how do they compare against each other and which one to use? In this paper, we frame the arguments in a holistic approach by establishing a common comparison framework based on the core functionalities of pub/sub systems. Using this framework, we then venture into a qualitative and quantitative (i.e. empirical) comparison of the common features of the two systems. Additionally, we also highlight the distinct features that each of these systems has. After enumerating a set of use cases that are best suited for RabbitMQ or Kafka, we try to guide the reader through a determination table to choose the best architecture given his/her particular set of requirements.

Cite

@article{arxiv.1709.00333,
  title  = {Kafka versus RabbitMQ},
  author = {Philippe Dobbelaere and Kyumars Sheykh Esmaili},
  journal= {arXiv preprint arXiv:1709.00333},
  year   = {2017}
}

Comments

25 single-column pages, 7 figures, 5 tables

R2 v1 2026-06-22T21:30:28.805Z