Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Analyzing Parameter Sets For Apache Kafka and RabbitMQ On A Cloud Platform
KTH, School of Electrical Engineering and Computer Science (EECS).
2018 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Abstract [en]

Applications found in both large and small enterprises need a communication method in order to meet requirements of scalability and durability. Many communication methods exist, but the most well-used are message queues and message brokers. The problem is that there exist many different types of message queues and message brokers with their own unique design and implementation choices. These choices result in different parameter sets, which can be configured in order to meet requirements of for example high durability, throughput, and availability.

This thesis tests two different message brokers, Apache Kafka and RabbitMQ, with the purpose of discussing and showing the impact on throughput and latency when using a variety of parameters. The experiments conducted are focused on two primary metrics, latency and throughput, with secondary metrics such as diskand CPU-usage. The parameters chosen for both RabbitMQ and Kafka are optimized for maximized throughput and decreased latency. The experiments conducted are tested on a cloud platform; Amazon Web Services.

The results show that Kafka outshines RabbitMQ regarding throughput and latency. RabbitMQ is the most efficient in terms of quantity of data being written, while on the other hand being more CPU-heavy than Kafka. Kafka performs better than RabbitMQ in terms of the amount of messages being sent and having the shortest one-way latency.

Abstract [sv]

Applikationer som finns i både komplexa och icke-komplexa system behöver en kommunikationsmetod för att uppfylla kriterierna för skalbarhet och hållbarhet. Många kommunikationsmetoder existerar, men de mest använda är meddelandeköer och meddelandemäklare. Problemet är att det finns en uppsjö av olika typer av meddelandeköer och meddelandemäklare som är unika med avseende på deras design och implementering. Dessa val resulterar i olika parametersatser som kan konfigureras för att passa olika kriterier, exempelvis hög hållbarhet, genomströmning och tillgänglighet.

Denna avhandling testar två olika meddelandemäklare, Apache Kafka och RabbitMQ med syfte att diskutera och visa effekterna av att använda olika parametrar. De utförda experimenten är inriktade på två primära mätvärden, latens och genomströmning, med sekundära mätvärden som exempelvis diskanvändning och CPU-användning. De parametrar som valts för både RabbitMQ och Kafka optimeras med fokus på de primära mätvärdena. Experimenten som genomförs testades på en molnplattform; Amazon Web Services.

Resultaten visar att Kafka presterar bättre än RabbitMQ när det kommer till genomströmning och latens. Gällande inverkan av Kafka och RabbitMQ på mängden skriven data, är RabbitMQ den mest effektiva, medan den å andra sidan är mer CPU-tung än Kafka.

Place, publisher, year, edition, pages
2018. , p. 54
Series
TRITA-EECS-EX ; 2018:356
Keywords [en]
Kafka, RabbitMQ, throughput, latency, cloud platform, testing
Keywords [sv]
Apache Kafka, RabbitMQ, genomflöde, latens, molnplattform, testning
National Category
Computer and Information Sciences
Identifiers
URN: urn:nbn:se:kth:diva-232140OAI: oai:DiVA.org:kth-232140DiVA, id: diva2:1232563
Subject / course
Information and Communication Technology
Educational program
Master of Science - Software Engineering of Distributed Systems
Supervisors
Examiners
Available from: 2018-07-12 Created: 2018-07-12 Last updated: 2018-07-13Bibliographically approved

Open Access in DiVA

fulltext(1300 kB)4 downloads
File information
File name FULLTEXT01.pdfFile size 1300 kBChecksum SHA-512
8374839e038f481f84214a7849ee34a70504fe8f25ff58afeec94ffd7db017ccff048936d4d2a5b6c803b28aa951c7c9e3d3383bf66c771d03f7b5e5f5a828e3
Type fulltextMimetype application/pdf

By organisation
School of Electrical Engineering and Computer Science (EECS)
Computer and Information Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 4 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 26 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf