Serverless computing is a widely adopted cloud execution model composed of Function-as-a-Service (FaaS) and Backend-as-a-Service (BaaS) offerings. The increased level of abstraction makes vendor lock-in inherent to serverless computing, raising more concerns than previous cloud paradigms. Multi-cloud serverless is a promising emerging approach against vendor lock-in, yet multiple challenges must be overcome to tap its potential. First, we need to be aware of both performance and cost of each FaaS provider. Second, a multi-cloud architecture needs to be proposed before deploying a multi-cloud workflow. Domain-specific serverless offerings must then be integrated into the multi-cloud architecture to improve performance or save costs. Moreover, dealing with serverless offerings from multiple providers is challenging. Finally, we require workload portability support for serverless multi-cloud. In this paper, we present a multi-cloud library for cross-serverless offerings. We develop the End Analysis System (EAS) to support comparison among public FaaS providers in terms of performance and cost. Moreover, we design proof-of-concept multi-cloud architectures with domain-specific serverless offerings to alleviate problems such as data gravity. Finally, we deploy workloads on these architectures to evaluate several public FaaS offerings.
翻译:无服务器计算是一种广泛采用的云执行模式,由功能为服务(FaaS)和后端为服务(BaaS)提供的产品组成。 抽象程度的提高使得供应商锁定了无服务器计算所固有的固有内容,比以往的云型模式提出了更多的关切。 多宽度的服务器是针对供应商锁定的一种有希望的新办法,但为了挖掘其潜力,必须克服多种挑战。 首先,我们需要了解每个FaaS供应商的性能和成本。 其次,在部署多层工作流程之前,需要提出一个多层结构。 具体针对无服务器的提供必须融入多层结构,以提高性能或节省成本。 此外,处理多个供应商提供的无服务器提供的建议具有挑战性。 最后,我们需要对无服务器锁定的多层提供工作量的可转移性支持。 在本文中,我们需要一个多层图书馆,供跨服务器提供多层提供。 我们开发了终端分析系统(EAS)以支持公共供应商在性能和成本方面进行对比。 单域服务器提供多级的系统设计, 以提供这些可减缓的公共域域域域架构,作为我们无法承受的域域域域域域校正。