无服务器函数快照的基准测试、分析与优化
分布式、并行与集群计算
2021-02-09 v3
摘要
无服务器计算因其高可扩展性与灵活的按使用量计费模式而迅速普及。在无服务器中,开发者将服务构建为一组函数,由点击等各类事件零星调用。函数调用的高到达时间间隔变异性促使提供商在每次调用时启动新函数实例,导致显著的冷启动延迟,降低用户体验。为降低冷启动延迟,业界已转向快照技术,即将完全启动的函数镜像存储于磁盘,从而实现比从零启动函数更快的调用。本工作引入 vHive,一个用于无服务器实验的开源框架,旨在使研究者能够跨整个无服务器技术栈进行研究与创新。利用 vHive,我们刻画了基于业界领先的 Containerd 编排框架与 Firecracker 虚拟机监控器技术的、最先进的基于快照的无服务器基础设施。我们发现,从快照启动的函数其执行时间平均比该函数常驻内存时高 95%。我们表明高延迟归因于频繁缺页,因为函数状态以逐页方式从磁盘调入客户内存。我们的分析进一步揭示,函数在同一函数的不同调用中访问相同的稳定工作集页面。利用该洞见,我们构建了 REAP,一种用于无服务器主机的轻量级软件机制,记录函数的稳定客户内存页面工作集并主动从磁盘预取到内存。与基线快照相比,REAP 平均将冷启动延迟削减了 3.7 倍。
引用
@article{arxiv.2101.09355,
title = {Benchmarking, Analysis, and Optimization of Serverless Function Snapshots},
author = {Dmitrii Ustiugov and Plamen Petrov and Marios Kogias and Edouard Bugnion and Boris Grot},
journal= {arXiv preprint arXiv:2101.09355},
year = {2021}
}
备注
To appear in ASPLOS 2021