Return to search

A comparison of Azure’s Function-as-a-Service and Infrastructure-as-a-Service solutions / En jämförelse av Azures Function-as-a-Service och Infrastructure-as-a-Service molnlösningar

Cloud computing is a growing industry. More and more companies are moving away from on-premise infrastructure. Instead, the choice is often to build their systems based on cloud services. This growth in the industry has brought with it new needs and consequently, new solutions. There have never existed as many different cloud providers and services offered by these providers. One of the newer paradigms in this industry is the serverless approach. The problem of this thesis is that there is a lack of research into how Azure's serverless Function-as-a-Service offering compare to their more traditional Infrastructure-as-a-Service one. Therefore, the purpose of this work is to compare the two with regards to their performance, cost, and required developer effort. The goal is to provide a comparison that can help software professionals in choosing an appropriate cloud solution for their application. Additionally, it aims to contribute to the increased knowledge of modern serverless solutions while providing a basis for future research. A qualitative method supported by measurements is used. The two cloud solutions are compared with regards to their performance, cost and developer effort. This is done by implementing and deploying equivalent Representational State Transfer applications with the two Azure offerings. The two implementations are stress-tested to measure their performance, and their incurred costs are compared. Additionally, the effort involved in developing the two solutions is compared by studying the amount of time required to deploy them, and the amount of code needed for them. The results show that the serverless Function-as-a-Service solution performed worse under the types of high loads used in the study. The incurred costs for the performed tests were higher for the serverless option, while the developer effort involved was lower. Additionally, further testing showed that the performance of the Function-as-a-Service solution was highly dependent on the concept of cold starts. / Molnbaserade tjänster är en växande industri. Fler och fler företag rör sig bort från att ha sin infrastruktur i egna lokaler. Istället väljer många att bygga sina system med molntjänster. Denna tillväxt inom industrin har fört med sig nya behov och med det nya lösningar. Det har aldrig tidigare existerat lika många molnleverantörer och molntjänster. En ny paradigm inom denna industri är det serverlösa tillvägagångssättet. Problemet som denna uppsats ämnar att angripa är att det finns en brist på forskning som jämför Azures serverlösa Function-as-a-Service tjänst med deras mer traditionella Infrastructure-as-a-Service tjänst. Syftet med detta arbete är därför att jämföra dessa två med avseende på deras prestanda, kostnad och nödvändig utvecklaransträngning. Målet är att tillhandahålla en jämförelse som kan hjälpa arbetare inom mjukvaruindustrin att välja en passande molnlösning för deras behov. Utöver det ämnar detta arbete att bidra till en ökad kunskap kring moderna serverlösa tjänster, samt att tillhandahålla en bas för framtida forskning. En kvalitativ metod understödd av mätningar används. De två tjänsterna jämförs med avseende på deras prestanda, kostnad och nödvändig utvecklaranstränging. Detta utförs genom att implementera och driftsätta likvärdiga Representational State Transfer-applikationer med de två tjänsterna från Azure. Implementationerna stresstestas för att mäta deras prestanda, och kostnaden för detta jämförs. Utöver det jämförs den anstränging som krävdes av utvecklarna för att utveckla de två lösningarna, detta genom att studera tiden som behövdes för att driftsätta dem och hur mycket kod som erfordrades. Resultaten visar att den serverlösa Function-as-a-Service tjänsten presterade sämre för den typ av belastning som användes. Kostnaden för de utförda testerna var högre för den serverlösa tjänsten, medan den nödvändiga utvecklaransträngningen var lägre. Utöver detta visade ytterliggare testning att prestandan för Function-as-a-Service tjänsten till stor del påverkas av kallstarter.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-329798
Date January 2023
CreatorsAlvaeus, Edvin, Lindén, Ludvig
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS), Stockholm : KTH Royal Institute of Technology
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2023:411

Page generated in 0.0023 seconds