cid 404b2391ca8a48939045284ed8d1936e0e78f09ffbc6bf6e901c1faa81b0f26c · original · open access · via openalex
Title: Kafka versus RabbitMQ Authors: Philippe Dobbelaere; Kyumars Sheykh Esmaili Venue: arXiv (Cornell University) Year: 2017 Canonical: doi:10.48550/arxiv.1709.00333 URL: https://doi.org/10.48550/arxiv.1709.00333 Collector: openalex OA: true 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.