Comparative analysis of message brokers

Mateusz Kaczor

mateusz.kaczor@pollub.edu.pl
Lublin 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; RabbitMQ

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

Download


Published
2022-06-30

Cited by

Kaczor, M., & Powroźnik, P. (2022). Comparative analysis of message brokers. Journal of Computer Sciences Institute, 23, 89–96. https://doi.org/10.35784/jcsi.2879

Authors

Mateusz Kaczor 
mateusz.kaczor@pollub.edu.pl
Lublin University of Technology Poland

Authors

Paweł Powroźnik 

Lublin University of Technology Poland

Statistics

Abstract views: 359
PDF downloads: 348