Mid Sweden University

miun.sePublications
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
A quantitative analysis of modern LoadBalancers’ performance using Docker Swarm
Mid Sweden University, Faculty of Science, Technology and Media, Department of Information Systems and Technology.
2021 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [sv]

Det är helt otänkbart hur stort internet är och mängden data som lagras på internet är otänkbart stora. Prestanda är viktigt för webben; webbprestanda innebär i grunden till hur snabbt innehållet på en webbplats laddas och renderas i en webbläsare och även hur bra webbplatsen responderar när en användare försöker integrera med den. Ett sätt att upprätthålla en bra webbplatsprestanda och hålla den tillgänglig för alla internetanvändare är att använda en last-balanserare. Last-balansering är en teknik för att distribuera nätverkstrafik över flera servrar, den dirigerar/tilldelar kundernas förfrågningar mellan servrarna för att hantera belastningar orsakades av ett stort antal förfrågningar. Denna avhandling/projekt försöker jämföra flera last-balanserare och last-balanseringsalgoritmer genom att utföra en prestandamätning. Dessa last-balanserare har använts i kombination med Docker Swarm för att testa last-balanserarnas prestanda med varierande antal noder som ska balanseras. Dessutom har en testbädd utformats och implementerats för att studera prestanda i detalj.  

Resultatet av prestandamätningen visade att en ökning i antalet noder kommer inte resulterar en bra prestanda. Det som observerades under mättningen är att ett optimalt antal noder befanns vara mellan 1–20 för alla utförda tester. Studien visade att ingen last-balanserare kunde betraktas som en definitiv vinnare, istället visade det sig att olika konfigureringar av last-balanserare presterade varierande bra vid olika tester.

Abstract [en]

It is utterly unimaginable how big the internet is and the amounts of data stored on the internet are inconceivably large. Performance is important for the web; web performance basically refers to how fast content of a website loads and renders in a web browser and also how good the website responds when a user tries to interact with it. One way of maintaining a good website performance and keep it accessible to all internet users is to use a load balancer. Load balancing is a technique of distributing network traffic across multiple servers, it directs/assigns clients’ requests between servers in order to manage loads caused by a huge number of requests. This thesis attempts to compare several load balancers and load balancing algorithms by benchmarking them. These load balancers have been used in conjunction with docker swarm in order to test their performance with varying numbers of nodes to balance. Furthermore, a testbed has been designed and implemented to study performance in detail. 

 

The outcome of the benchmarks measurement showed that increasing the number of nodes would not result in superior performance. It was noted that an optimal number of nodes was found to be between 1 and 20 for all the tests performed. The study showed that no load balancer could be considered a clear winner, instead, different configurations of load balancers performed varyingly well at different tests. 

Place, publisher, year, edition, pages
2021. , p. 44
Keywords [en]
Docker container, load balancing, Nginx, HAProxy, roundrobin, least connection, node.js, curl-loader
Keywords [sv]
Docker Kontainer, last-balansering, Nginx, HAPproxy, round-robin, least connection, node.js, curl-loader.
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:miun:diva-42403Local ID: DT-V21-G3-033OAI: oai:DiVA.org:miun-42403DiVA, id: diva2:1574049
Subject / course
Computer Engineering DT1
Educational program
Computer Science TDATG 180 higher education credits
Supervisors
Examiners
Available from: 2021-06-28 Created: 2021-06-28 Last updated: 2021-06-28Bibliographically approved

Open Access in DiVA

No full text in DiVA

Search in DiVA

By author/editor
Brandthav, Tristan
By organisation
Department of Information Systems and Technology
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar

urn-nbn

Altmetric score

urn-nbn
Total: 416 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