Efficiency comparison of message brokers
Sebastian Dyjach
sebastian.dyjach@pollub.edu.plLublin University of Technology (Poland)
Małgorzata Plechawska-Wójcik
Lublin University of Technology (Poland)
Abstract
The aim of the article is to compare three main brokers used in the development of web applications: RabbitMQ, Apache Kafka and Apache Pulsar. To conduct the research, a custom application was created to compare two key metrics in the context of message queue performance. These metrics are: latency and number of processed messages per second. The conducted experiments showed that in scenarios requiring processing of backlogged messages by the broker and in cases of minimizing the impact of the SSL protocol on broker performance, Apache Pulsar proved to be the best solution. In the scenario examining message delivery delays, RabbitMQ turned out to be the best tool, while in the case of examining the stability of message processing in real-time, the best results were achieved with Apache Kafka.
Keywords:
Apache Kafka, Apache Pulsar, message broker, RabbitMQReferences
Oficjalna dokumentacja narzędzia Spring Boot, https://docs.spring.io/spring-boot/docs/current/reference/html, [21.03.2024].
Google Scholar
Dokumentacja platformy spring-cloud-binder, https://cloud.spring.io/spring-cloud-stream/multi/multi_spring-cloud-stream-overview-binders.html, [21.03.2024].
Google Scholar
G. Fu, Y. Zhang, G. Yu, A Fair Comparison of Message Queuing Systems, IEEE Access 9 (2020) 421-431, https://dx.doi.org/10.1109/ACCESS.2020.3046503.
Google Scholar
Magnoni, Luca. Modern messaging for distributed systems. Journal of Physics: Conference Series., IOP Publishing (2015) 2-6.
Google Scholar
B. Singh., B. H. Chaitra. Comprehensive Review of Stream Processing Tools. International Research Journal of Engineering and Tech¬nology 7(5) (2020) 3537-3540.
Google Scholar
K. Sowmya, T. Sharvari, A study on Modern Mes¬saging Systems - Kafka, RabbitMQ and NATS Stream¬ing, CoRR abs/1912.03715 (2019) 2-5.
Google Scholar
M. Rokin, S. Hossain, M. Ashfakur, Benchmarking Message Queues, Department of Computer Science, Bay-lor University (2023) 298-312, https://doi.org/10.3390/telecom4020018.
Google Scholar
Oficjalna dokumentacja OpenMessaging Benchmark Framework, https://openmessaging.cloud/docs, [20.03.2024].
Google Scholar
P. Jeba, P. Marca, J. Arockia. Comparison of JMS Products, International Journal of Scientific Research in Computer Science (2018) 190-193, https://doi.org/10.32628/CSEIT183858.
Google Scholar
T. E. Pereira, R. de Araújo Souza, Performance analysis between Apache Kafka and Rab¬bitMQ, UFCG (2020) 5-11.
Google Scholar
Oficjalna dokumentacja narzędzia Apache Kafka, https://kafka.apache.org/documentation, [22.03.2024].
Google Scholar
Platforma Linkedin, https://www.linkedin.com, [01.04.2024].
Google Scholar
V. E. Balas, L.C Jain, Replication in Raft vs Apache Zookeeper, Proceedings of the 9th International Workshop Soft Computing Applications (2020) 426-436, https://doi.org/10.1007/978-3-031-23636-5.
Google Scholar
Oficjalna strona narzędzia RabbitMQ, https://www.rabbitmq.com, [23.03.2024].
Google Scholar
Oficjalna dokumentacja narzędzia Apache Pulsar https://pulsar.apache.org/docs, [23.03.2024].
Google Scholar
A. Anjum, I. Odun-Ayo, Cloud multi-tenancy: Issues and developments, Proceedings of the 10th International Con-ference on Utility and Cloud Computing (2017) 209-214, https://doi.org/10.1145/3147234.3148095.
Google Scholar
Dokumentacja firmy Oracle dotycząca tworzenia keystore oraz truststore formatem JKS, https://docs.oracle.com/cd/E19509-01/820-3503/ggfen/index.html, [26.03.2024].
Google Scholar
Authors
Małgorzata Plechawska-WójcikLublin University of Technology Poland
Statistics
Abstract views: 148PDF downloads: 151