🤖 AI Summary
Existing FaaS platforms employ immediate execution for both synchronous and asynchronous invocations, leading to resource underutilization during low-load periods and severe overload during traffic spikes. This work proposes a lightweight, load-aware asynchronous function deferral mechanism that enables fine-grained rescheduling of asynchronous invocations without modifying the underlying platform architecture or requiring system-level modeling. Implemented as a prototype on Nuclio, the approach introduces a minimal proxy layer to intercept asynchronous requests and dynamically determine optimal deferral timing based on real-time resource utilization. Evaluated in a document-processing workload, the method reduces average request latency by 54%, significantly mitigates overload conditions, and concurrently lowers resource consumption and operational costs. The solution achieves substantial performance improvements while preserving deployment simplicity and architectural transparency.
📝 Abstract
Function-as-a-Service (FaaS) enables developers to run serverless applications without managing operational tasks. In current FaaS platforms, both synchronous and asynchronous calls are executed immediately. In this paper, we present ProFaaStinate, which extends serverless platforms to enable delayed execution of asynchronous function calls. This allows platforms to execute calls at convenient times with higher resource availability or lower load. ProFaaStinate is able to optimize performance without requiring deep integration into the rest of the platform, or a complex systems model. In our evaluation, our prototype built on top of Nuclio can reduce request response latency and workflow duration while also preventing the system from being overloaded during load peaks. Using a document preparation use case, we show a 54% reduction in average request response latency. This reduction in resource usage benefits both platforms and users as cost savings.