Today's serverless computing has several key limitations including per-function resource limits, fixed CPU-to-memory ratio, and constant resource allocation throughout a function execution and across different invocations of it. The root cause of these limitations is the "function-centric" model: a function is a fixed-size box that is allocated, executed, and terminated as an inseparable unit. This unit is pre-defined by the cloud provider and cannot properly capture user needs. We propose a "resource-centric" model for serverless computing that captures fine-grained resource needs throughout an application's execution using components of distinct resource type, amount, and time span. We build a new resource-based serverless execution platform that executes components in a disaggregated, on-demand, and auto-scaled manner. Our results show that ReSC solves various resource-related issues of today's serverless computing, while retaining or even improving its performance.
翻译:今天的无服务器计算有几个关键的局限性, 包括每个功能的资源限制、 固定的 CPU 对模率, 以及在整个功能执行过程中和在不同引用过程中的经常性资源分配。 这些限制的根源在于“ 以功能为中心的” 模式: 函数是一个固定大小的框, 被分配、 执行和终止为一个不可分割的单位。 这个单位由云源提供商预先定义, 无法正确捕捉用户需求 。 我们为无服务器计算提出了一个“ 资源中心” 模式, 在应用程序执行过程中, 使用不同资源类型、 数量和时间间隔的组件, 捕捉精细微的资源需求 。 我们建立了一个新的基于资源的无服务器执行平台, 以分类、 按需和自动缩放的方式执行部件 。 我们的结果显示, ReSC 解决了当今服务器无服务器计算的各种资源相关问题, 同时保留甚至改进了它的性能 。