RainbowCake: Mitigating Cold-starts in Serverless with Layer-wise Container Caching and Sharing
Hanfei Yu, Rohan Basu Roy, C. Fontenot, Devesh Tiwari, Jian Li, Hong Zhang, Hao Wang, Seung‐Jong Park
Abstract
Serverless computing has grown rapidly as a new cloud computing paradigm that promises ease-of-management, cost-efficiency, and auto-scaling by shipping functions via self-contained virtualized containers. Unfortunately, serverless computing suffers from severe cold-start problems---starting containers incurs non-trivial latency. Full container caching is widely applied to mitigate cold-starts, yet has recently been outperformed by two lines of research: partial container caching and container sharing. However, either partial container caching or container sharing techniques exhibit their drawbacks. Partial container caching effectively deals with burstiness while leaving cold-start mitigation halfway; container sharing reduces cold-starts by enabling containers to serve multiple functions while suffering from excessive memory waste due to over-packed containers.