Resource-Centric Serverless Computing
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, which adapts the underlying provider serverless systems to follow applications' natural resource needs. To achieve this vision, we built Scad based on two ideas: disaggregating a serverless application based on its resource features and aggregating disaggregated units for better performance. Our results show that Scad solves various resource-related issues of today's serverless computing, while retaining or even improving its performance.
READ FULL TEXT