Cloud Function Lifecycle Considerations for Portability in Function as a Service

PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND SERVICES SCIENCE (CLOSER)(2022)

引用 3|浏览0
暂无评分
摘要
Portability is an important property to assess the quality of software. In cloud environments, where functions and other services are hosted by providers with proprietary interfaces, vendor lock-in is a typical problem. In this paper, we investigated the portability situation for public Function as a Service (FaaS) offerings based on six metrics. We designed our research to address the software lifecycle of a cloud function during implementation, packaging and deployment. For a small use case, we derived a portability-optimized implementation. Via this empirical investigation and a prototypical migration from AWS Lambda to Azure Function and from AWS Lambda to Google Cloud Function respectively, we were able to reduce writing source code in the latter case by a factor of 17 measured on a Lines of Code (LOC) basis. We found that the default zip packaging option is still the favored approach at Function as a Service (FaaS) platforms. For deploying our functions to the cloud service provider, we used Infrastructure as Code (IaC) tools. For cloud function only deployments the Serverless Framework is the best option whereas Terraform supports developers for mixed deployments where cloud functions and dependent services like databases are deployed at once.
更多
查看译文
关键词
Function as a Service, Serverless Computing, Portability, Function Lifecycle
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要