通过操作系统协同设计驾驭无服务器冷启动
操作系统
2025-09-19 v1 分布式、并行与集群计算
摘要
无服务器计算承诺提供细粒度弹性和操作简便性,推动了来自行业和学术界的广泛关注。然而,这一承诺受到了冷启动问题的制约,即在一段时间的非活动后调用函数会触发昂贵的初始化,导致任何工作开始前都需等待。即便拥有当今高速存储器,人们仍普遍认为实现亚毫秒级冷启动需要将状态保留在内存中。本文挑战了这一假设。我们分析了现有快照/恢复机制,发现操作系统水平的限制而非存储速度,才是实现从磁盘 ultra-fast 恢复的真实障碍。这些限制迫使当前系统要么以代价高昂的方式分阶段恢复状态,要么捕获过多状态,从而导致恢复时间更长且性能不可预测。此外,当前公开的操作系统内存基元使我们难以可靠地将数据预取到内存中,避免代价高昂的运行时页面错误。为克服这些障碍,我们提出了Spice,一个为无服务器快照/恢复专门构建的执行引擎。Spice 直接集成操作系统,以无需代价回放的方式恢复内核状态,并引入专用的内存映射恢复基元,以高效可靠地恢复内存映射。结果,Spice 能够在从磁盘进行的冷恢复时实现接近温热性能,相较于最先进的基于进程的系统将延迟降低最高达14.9倍,相较于基于虚拟机的系统降低最高达10.6倍。这证明了在无服务器计算中,高性能和内存弹性不再需要权衡。
引用
@article{arxiv.2509.14292,
title = {Taming Serverless Cold Starts Through OS Co-Design},
author = {Ben Holmes and Baltasar Dinis and Lana Honcharuk and Joshua Fried and Adam Belay},
journal= {arXiv preprint arXiv:2509.14292},
year = {2025}
}