Evaluatie van een FaaS serverless architectuur voor event-gebaseerde verwerking

Student:Alexis Martens
Richting:Master of Science in de industriële wetenschappen: informatica
Abstract:In antwoord op de vraag van de praktijkmensen is een breed scala aan modellen en platforms voor clouddiensten geïntroduceerd, waaronder IaaS, PaaS, CaaS, en recentelijk FaaS. FaaS breidt uit op CaaS door ontwikkelaars in staat te stellen zich vooral te concentreren op het schrijven van code voor functies, in plaats van de infrastructuur te moeten beheren waarop deze draait, zoals een Kubernetes-cluster, vandaar het concept serverless. De "pay-per-use" en "zero-waste" paradigma's worden beide mogelijk gemaakt door de fijnkorrelige functies, die dynamisch op- en afgeschaald worden op basis van de belasting op tijdstip "t". Het doel van dit werk is de invloed van het cloudmodel op de prestaties van applicaties te evalueren. Daarom wordt een empirische benchmark van een CaaS- en twee FaaS-platformen gerealiseerd door het verbruik van resources en de applicatieve verwerkingscapaciteit van een testapplicatie te vergelijken. Zowel een HTTP- als een event-gebaseerde versie van de applicatie worden getest.
Abstract (Eng):In response to the practitioners' demand, a wide range of cloud service models and platforms, including IaaS, PaaS, CaaS, and recently FaaS, have been introduced. FaaS expands on CaaS by allowing developers to concentrate mostly on writing code for functions, rather than having to manage the infrastructure that runs it, like a Kubernetes cluster, hence the concept of serverless. The "pay-per-use" and "zero-waste" paradigms are both made possible by the fine-grained functions, which are dynamically scaled up and down based on the load at time "t". The objective of the work is to evaluate the impact of the cloud model on application performance. Therefore an empirical benchmark of one CaaS and two FaaS platforms is realized by comparing resource consumption and applicative throughput of a test application. Both a HTTP- and an event-based version of the application are tested.