FaaSten Your Decisions: Classification Framework and Technology Review of Function-as-a-Service Platforms
This work addresses the problem of platform selection for developers and researchers in cloud computing, but it is incremental as it builds on existing FaaS concepts with a new framework and tool.
The paper tackles the challenge of selecting appropriate Function-as-a-Service (FaaS) platforms for serverless applications by presenting a classification framework, a systematic review of ten prominent platforms, and a selection support system called faastener to aid researchers and practitioners.
Function-as-a-Service (FaaS) is a cloud service model enabling developers to offload event-driven executable snippets of code. The execution and management of such functions becomes a FaaS provider's responsibility, hereby included their on-demand provisioning and automatic scaling. Key enablers for this cloud service model are FaaS platforms, e.g., AWS Lambda, Microsoft Azure Functions or OpenFaaS. At the same time, the choice of the most appropriate FaaS platform for deploying and running a serverless application is not trivial, as various organizational and technical aspects have to be taken into account. In this work, we present (i) a FaaS platform classification framework derived using a mixed method study and (ii) a systematic technology review of the ten most prominent FaaS platforms, based on the proposed classification framework. Moreover, we present (iii) a FaaS platform selection support system, called \faastener, which helps researchers and practitioners to choose the FaaS platform most suited for their requirements.