Award Date
August 2019
Degree Type
Thesis
Degree Name
Master of Science in Computer Science
Department
Computer Science
First Committee Member
Yoohwan Kim
Second Committee Member
Ju-Yeon Jo
Third Committee Member
Fatma Nasoz
Fourth Committee Member
Sean Mulvenon
Number of Pages
68
Abstract
Message queues are queues of messages that facilitate communication between applications. A queue is a line of messages or events waiting to be handled in a sequential manner. A message queue is a queue of messages sent between applications. It includes a sequence of work objects that are waiting to be processed. For a distributed system to work, it needs to pass information between various machines. No single machine is responsible for the entire system, but all information is interrelated. Hence a major concern of distributed systems is this transfer of data. Which also proves to be one of the most significant challenges. Message Queues provide this asynchronous communication between applications. Major factors behind the success of an application is the ability to decouple and scale it.
In this thesis, we focus on analyzing and comparing the performance of three most widely used open source message brokers namely Apache ActiveMQ, RabbitMQ and Apache Kafka which help in creating a distributed system. An end to end message queuing model is setup for each of the brokers to mimic real world application models. The producers, consumers and brokers that make up the message queuing system are then put through rigorous benchmarking tests to analyze their performance. The performance is evaluated based on major factors like throughput, latency and total time taken by the transaction. Based on the benchmarking results, it was observed that Apache Kafka which was initially developed to be a message queue but later enhanced to be a streaming platform outdid RabbitMQ and Apache ActiveMQ in almost all the performance factors. It was also observed that the larger the message size, more constant is the performance of all message brokers. Hence, for gauging the performance in hard times, the message sizes considered for the experiments is very small. This gives us a glimpse of the actual performance capabilities of the message queuing brokers.
Keywords
ActiveMQ; Kafka; Message Queues; RabbitMQ
Disciplines
Computer Sciences
File Format
Degree Grantor
University of Nevada, Las Vegas
Language
English
Repository Citation
Raje, Sanika, "Performance Comparison of Message Queue Methods" (2019). UNLV Theses, Dissertations, Professional Papers, and Capstones. 3746.
http://dx.doi.org/10.34917/16076287
Rights
IN COPYRIGHT. For more information about this rights statement, please visit http://rightsstatements.org/vocab/InC/1.0/