Comparative analysis of message brokers
Mateusz Kaczor
mateusz.kaczor@pollub.edu.plLublin University of Technology (Poland)
Paweł Powroźnik
Lublin University of Technology (Poland)
Abstract
The article presents a comparative analysis of the two most popular message brokers: Apache Kafka and RabbitMQ. The purpose of this paper was to perform a comparative analysis of selected technologies and to determine their time efficiency. For the needs of the research four applications were prepared (two for each tested technology) that were sending and receiving messages. The research was supplemented with tests with the use of auxiliary tools and theoretical comparison. The comparative analysis of gathered data allowed us to determine the most effective technology, which happened to be Apache Kafka.
Keywords:
message broker; Apache Kafka; RabbitMQReferences
P. Dobbelaere, K. Esmaili, Kafka versus RabbitMQ: A comparative study of two industry reference publish/subscribe implementations, Proceedings of the 11th ACM international conference on distributed and event-based systems (2017) 227-238.
DOI: https://doi.org/10.1145/3093742.3093908
Google Scholar
T. Sharvari, K. Sowmya Nag, A study on Modern Messaging Systems - Kafka, RabbitMQ and NATS Streaming, CoRR (2019) abs/1912.03715.
Google Scholar
J. Kreps, N. Narkhede, J. Rao, Kafka: a Distributed Messaging System for Log Processing, Proceedings of the NetDB (2011) 1-7.
Google Scholar
B. Jones, S. Luxenberg, RabbitMQ Performance and Scalability Analysis, project on CS (2011) 4284.
Google Scholar
V. John, X. Liu, A Survey of Distributed Message Broker Queues, arXiv preprint (2017) arXiv:1704.00411.
Google Scholar
N. Narkhede, G. Shapira, T. Palino, Kafka: the definitive guide: real-time data and stream processing at scale, O’Reilly Media, 2017.
Google Scholar
Apache Kafka, Apache Kafka Documentation, https://kafka.apache.org/documentation.html, [2022-01-05].
Google Scholar
E. Ayanoglu, A. Yytaş, D. Nahum. Mastering RabbitMQ. Packt, 2016.
Google Scholar
RabbitMQ. RabbitMQ Documentation, https://www.rabbitmq.com/documentation.html, [2022-01-04].
Google Scholar
G. Roy, RabbitMQ in Depth, Manning Publications, 2017.
Google Scholar
E. Stiller. RabbitMQ vs. Kafka – An Architect’s Dilemma, https://stiller.blog/2020/02/rabbitmq-vs-kafka-an-architects-dilemma-part-2/, [2022-01-01].
Google Scholar
L. Johansson, When to use RabbitMQ or Apache Kafka, https://www.cloudamqp.com/blog/when-to-use-rabbitmq-or-apache-kafka.html, [2022-01-02].
Google Scholar
Indexnine. Apache Kafka: What sets it Apart, https://indexnine.com/apache-kafka-what-sets-it-apart/, [2022-01-03].
Google Scholar
Cloudera. Managing Apache Kafka - kafka-*-perf-test. https://docs.cloudera.com/runtime/7.2.10/kafkamanaging/topics/kafka-manage-cli-perf-test.html, [2022-01-07].
Google Scholar
RabbitMQ PerfTest, RabbitMQ PerfTest, https://rabbitmq.github.io/rabbitmq-perf-test/stable/htmlsingle/, [2022-01-07].
Google Scholar
Authors
Paweł PowroźnikLublin University of Technology Poland
Statistics
Abstract views: 343PDF downloads: 333
License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.