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.
翻译:函数- as- a- Service (FaaS) 是一个云服务模型, 使开发者能够卸载事件驱动的可执行代码片段。 这些功能的执行和管理成为FaaS提供者的责任, 包括按需提供和自动缩放。 这种云服务模型的关键促进因素是 FaaS 平台, 如 AWS Lambda、 微软Azure函数或 Open FaaaS 。 同时, 最合适的 FaaS 平台的部署和运行并非微不足道, 因为各种组织和技术方面都必须加以考虑。 在此工作中, 我们提出 (一) 使用混合方法研究得出的 FaaS 平台分类框架, 以及 (二) 根据拟议分类框架对十个最突出的 FaaAS 平台进行系统化技术审查。 此外, 我们提出 (三) FaAS 平台选择支持系统, 称为\faastener, 帮助研究人员和从业人员选择最适合其要求的 FaaaS 平台。