Author:
Dyjach Sebastian,Plechawska-Wójcik Małgorzata
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.
Reference17 articles.
1. Oficjalna dokumentacja narzędzia Spring Boot, https://docs.spring.io/spring-boot/docs/current/reference/html, [21.03.2024].
2. Dokumentacja platformy spring-cloud-binder, https://cloud.spring.io/spring-cloud-stream/multi/multi_spring-cloud-stream-overview-binders.html, [21.03.2024].
3. 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.
4. Magnoni, Luca. Modern messaging for distributed systems. Journal of Physics: Conference Series., IOP Publishing (2015) 2-6.
5. B. Singh., B. H. Chaitra. Comprehensive Review of Stream Processing Tools. International Research Journal of Engineering and Tech¬nology 7(5) (2020) 3537-3540.