Tytuł pozycji:
Porównanie wydajności brokerów wiadomości
Celem artykułu jest porównanie trzech głównych brokerów używanych w rozwoju aplikacji internetowych: RabbitMQ, Apache Kafka i Apache Pulsar. Do przeprowadzenia badań została stworzona autorska aplikacja umożliwiająca porównanie dwóch kluczowych metryk w kontekście wydajności kolejek wiadomości. Są nimi opóźnienie oraz liczba wiadomości procesowanych na sekundę. Przeprowadzone eksperymenty wykazały, że w scenariuszach wymagających procesowania zaległych wiadomości przez broker oraz w przypadku minimalizacji wpływu protokołu SSL na wydajność brokera najlepszym rozwiązaniem jest Apache Pulsar. W scenariuszu badającym opóźnienia w dostarczaniu wiadomości najlepszym narzędziem okazał się RabbitMQ, natomiast w przypadku badania stabilności procesowania wiadomości w czasie rzeczywistym, najlepsze rezultaty osiągnęło narzędzie Apache Kafka.
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.
Opracowanie rekordu ze środków MNiSW, umowa nr POPUL/SP/0154/2024/02 w ramach programu "Społeczna odpowiedzialność nauki II" - moduł: Popularyzacja nauki (2025).