Message Brokers and RabbitMQ in Action
Kamppuri, Tsuri (2014)
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2014053011018
https://urn.fi/URN:NBN:fi:amk-2014053011018
Tiivistelmä
The objectives of this bachelor’s thesis were to study the concept of messaging and messaging systems in the domain of Information Sciences, and to research the applicability of RabbitMQ for Paytrail Oyj as a replacement for pre-existing systems.
The thesis discusses the history of messaging and message queues, and the topologies, patterns, internal operational models, and usable protocols for messaging brokers. Theoretical part also compares RabbitMQ and ZeroMQ messaging solutions. The main focus of message broker applications was in RabbitMQ’s suitability for Paytrail’s needs as a payment service provider.
The practical section researched the substitutability of a web API example with a message queue solution. The section covered the benefits and different stages of the implementation through command line examples. At the end of the practical part additional examples were given where message queues could be useful from the perspective of Paytrail Oyj.
The results of the thesis were a theoretical information package to support the selection of a message broker solution and instructions for introducing RabbitMQ into an existing system coupled with additional ideas on other suitable applications for message queues. The additional ideas were made from the perspective of the client directly applicable for future development by the client.
The analysis and conclusion stage of the thesis weighed the pros and cons of RabbitMQ and ZeroMQ for different purposes and especially for Paytrail Oyj through their features, strengths and weaknesses, and the experiences from web API replacement implementation. As the final results RabbitMQ was found to be the best message queue solution for the client’s purposes. By following the additional application ideas and examples for implementation, Paytrail can begin mapping the use of message queues in their system and working on the implementation.
The thesis discusses the history of messaging and message queues, and the topologies, patterns, internal operational models, and usable protocols for messaging brokers. Theoretical part also compares RabbitMQ and ZeroMQ messaging solutions. The main focus of message broker applications was in RabbitMQ’s suitability for Paytrail’s needs as a payment service provider.
The practical section researched the substitutability of a web API example with a message queue solution. The section covered the benefits and different stages of the implementation through command line examples. At the end of the practical part additional examples were given where message queues could be useful from the perspective of Paytrail Oyj.
The results of the thesis were a theoretical information package to support the selection of a message broker solution and instructions for introducing RabbitMQ into an existing system coupled with additional ideas on other suitable applications for message queues. The additional ideas were made from the perspective of the client directly applicable for future development by the client.
The analysis and conclusion stage of the thesis weighed the pros and cons of RabbitMQ and ZeroMQ for different purposes and especially for Paytrail Oyj through their features, strengths and weaknesses, and the experiences from web API replacement implementation. As the final results RabbitMQ was found to be the best message queue solution for the client’s purposes. By following the additional application ideas and examples for implementation, Paytrail can begin mapping the use of message queues in their system and working on the implementation.