Serverless computing, or Function-as-a-Service (FaaS), enables a new way of building and scaling applications by allowing users to deploy fine-grained functions while providing fully-managed resource provisioning and auto-scaling. Custom FaaS container support is gaining traction as it enables better control over OSes, versioning, and tooling for modernizing FaaS applications. However, providing rapid container provisioning introduces non-trivial challenges for FaaS providers, since container provisioning is costly, and real-world FaaS workloads exhibit highly dynamic patterns. In this paper, we design FaaSNet, a highly-scalable middleware system for accelerating FaaS container provisioning. FaaSNet is driven by the workload and infrastructure requirements of the FaaS platform at one of the world's largest cloud providers, Alibaba Cloud Function Compute. FaaSNet enables scalable container provisioning via a lightweight, adaptive function tree (FT) structure. FaaSNet uses an I/O efficient, on-demand fetching mechanism to further reduce provisioning costs at scale. We implement and integrate FaaSNet in Alibaba Cloud Function Compute. Evaluation results show that FaaSNet: (1) finishes provisioning 2500 function containers on 1000 virtual machines in 8.3 seconds, (2) scales 13.4x and 16.3x faster than Alibaba Cloud's current FaaS platform and a state-of-the-art P2P container registry (Kraken), respectively, and (3) sustains a bursty workload using 75.2% less time than an optimized baseline.
翻译:无服务器计算,或Faas-as-Service(Faas-Service(FaaS),使用户能够部署精细的配置功能,同时提供完全管理的资源配置和自动缩放。Custer FaaS 集装箱支持正在获得牵引力,因为它能够更好地控制OSS、版本和工具,使FaaS应用程序现代化。然而,提供快速的集装箱提供给FaS供应商带来了非三角的挑战,因为集装箱提供费用昂贵,而真实世界的FaaaS工作量呈现出高度动态的模式。在本文件中,我们设计了FaAaSNet,这是加速FaAS集装箱供应的高度可缩放的虚拟中型软件系统。FaAaSNet受到世界上最大的云供应商之一FaaaS平台的工作量和基础设施要求的驱动。Alibaba Cloudloud Floud Floud 2-S网络能够通过轻量、适应功能树(FaSNet)结构,FaSNet使用I/OO 效率,在调控平台上进一步降低当前交付成本成本。