Print Email Facebook Twitter Monadic approach to Serverless Applications Title Monadic approach to Serverless Applications Author Kochar, Rahul (TU Delft Electrical Engineering, Mathematics and Computer Science) Contributor Rellermeyer, Jan S. (mentor) Degree granting institution Delft University of Technology Programme Computer Science | Distributed Systems Date 2024-04-18 Abstract The serverless computing trend is steadily picking up steam over the last few years and is challenging the traditional microservices on Kubernetes model which included inefficiencies like idling. The big three cloud providers AWS, GCP and Azure have different opinions on what serverless computing and serverless applications should look like, how they should be designed and what their architecture should be leading to each cloud going their own separate way. Ultimately, this causes vendor lock-in, fragments the serverless cloud technology landscape, paralyzes other research and development efforts while also harming other stakeholders like users, developers and businesses that depend on these cloud services and products. The heavy reliance on often changing proprietary API that is not compatible with alternatives makes stability a serious concern and enables exploitation of users. This thesis proposes MSA - Monadic approach to Serverless Applications to enables developers to write cloud agnostic serverless applications and tackle vendor lock-in. Users can build complex serverless applications without polluting business logic and migrate from one cloud to another by pressing a button. This thesis makes multiple other contributions such as documenting and showing how to reconcile differences in features between the big clouds in various ways for telemetry, metrics, unifying interactions of equivalent services in different clouds, getting rid of tedious boilerplate code in business logic while remaining cloud agnostic among others. Three serverless applications are built with MSA and benchmarked against equivalent applications build with alternatives. Serverless applications built with MSA frequently outperformed in execution time and RAM usage. These experiments also yielded insights on situations in which certain types of serverless applications perform better on a cloud than others. Lastly, usability of MSA and the quality of solution (solving vendor lock-in) received good scores in a user survey. Subject ServerlessMonadsVendor lockinCloud To reference this document use: http://resolver.tudelft.nl/uuid:853f2c6f-4b13-470c-9d1f-89b5b55eb146 Part of collection Student theses Document type master thesis Rights © 2024 Rahul Kochar Files PDF MSA_Master_Thesis.pdf 1.21 MB Close viewer /islandora/object/uuid:853f2c6f-4b13-470c-9d1f-89b5b55eb146/datastream/OBJ/view