论文标题

融合:通过反馈驱动的功能融合改善无服务器应用程序性能

Fusionize: Improving Serverless Application Performance through Feedback-Driven Function Fusion

论文作者

Schirmer, Trever, Scheuner, Joel, Pfandzelter, Tobias, Bermbach, David

论文摘要

无服务器计算通过消除操作问题(例如管理硬件或软件运行时间)来提高开发人员的生产率。但是,开发人员仍然需要将其应用程序分配到函数中,这可能是错误的,并增加了复杂性:使用一个小功能大小,其中只有应用程序中最小的逻辑单元才能在功能内部最大化灵活性和可重复性。但是,拥有较小的功能会导致调用开销,额外的寒冷开始,并且由于忙碌等待而可能增加成本。在本文中,我们介绍了融合式,该框架通过将应用程序代码融合为具有不同功能大小的多功能编排,从而消除了开发人员的这些问题。开发人员只需要按照轻巧的编程模型编写应用程序代码,而无需担心如何将应用程序变成函数。我们的框架自动将应用程序的不同部分融合到功能中并管理其交互。利用监视数据,该框架优化了应用程序零件到功能的分布,以优化部署目标,例如端到端延迟和成本。使用两个示例应用程序,我们表明融合可以自动并迭代地改善应用程序的部署伪像。

Serverless computing increases developer productivity by removing operational concerns such as managing hardware or software runtimes. Developers, however, still need to partition their application into functions, which can be error-prone and adds complexity: Using a small function size where only the smallest logical unit of an application is inside a function maximizes flexibility and reusability. Yet, having small functions leads to invocation overheads, additional cold starts, and may increase cost due to busy waiting. In this paper we present Fusionize, a framework that removes these concerns from developers by automatically fusing the application code into a multi-function orchestration with varying function size. Developers only need to write the application code following a lightweight programming model and do not need to worry how the application is turned into functions. Our framework automatically fuses different parts of the application into functions and manages their interactions. Leveraging monitoring data, the framework optimizes the distribution of application parts to functions to optimize deployment goals such as end-to-end latency and cost. Using two example applications, we show that Fusionize can automatically and iteratively improve the deployment artifacts of the application.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源