Comparison of Cloud Native messaging technologies
Nuikka, Juuso (2021)
Nuikka, Juuso
2021
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2021-05-21
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202104223314
https://urn.fi/URN:NBN:fi:tuni-202104223314
Tiivistelmä
In a large distributed system, managing outgoing and incoming communications is a complex task due to a large amount of connections. The data flowing inside the system is growing along with the system and manually managing them is not efficient after a certain point. Thus, there is a need for special software to simplify the connections in the system. The special software developed for this purpose is commonly referred to as message-oriented-middleware (MOM).
This paper will compare three different MOMs in the form of a literature review, Apache Kafka, Apache Pulsar, and RabbitMQ. These MOMs are compared based on predefined characteristics. These characteristics are important for a network management system running in a Cloud Native environment. These characteristics are consumer-producer patterns, scalability, throughput, reliability, security, and backward compatibility.
This paper's result is that Apache Kafka remains the primary choice as a MOM for systems demanding high throughput for its wide community adoption and mature technology. Apache Pulsar is Apache Kafka's most significant competitor in this area because it can outperform Apache Kafka in many performance-related characteristics. Apache Pulsar's community is not near Apache Kafka's, and its technology is less mature. RabbitMQ is found to be the best choice when data safety and reliability are a primary requirement.
This paper will compare three different MOMs in the form of a literature review, Apache Kafka, Apache Pulsar, and RabbitMQ. These MOMs are compared based on predefined characteristics. These characteristics are important for a network management system running in a Cloud Native environment. These characteristics are consumer-producer patterns, scalability, throughput, reliability, security, and backward compatibility.
This paper's result is that Apache Kafka remains the primary choice as a MOM for systems demanding high throughput for its wide community adoption and mature technology. Apache Pulsar is Apache Kafka's most significant competitor in this area because it can outperform Apache Kafka in many performance-related characteristics. Apache Pulsar's community is not near Apache Kafka's, and its technology is less mature. RabbitMQ is found to be the best choice when data safety and reliability are a primary requirement.