← 最新论文
💻 computer science

BudgetFunnel: Coarse-to-Fine Global Budget Allocation for Trace-Driven Serverless Cold-Start Mitigation

BudgetFunnel 是一个由追踪驱动的由粗到精的框架,它通过轻量级筛选和具有前驱感知能力的贪心分配器,在异构无服务器函数之间分配共享的热保留预算,实现了接近最优的冷启动缓解效果,且与全评估及现有基准策略相比,显著降低了评估开销。

原作者: xuming wu, Zhipeng Ye, Gaoyuan Zhao, Zihao Lu, Jiayi Hong, Wen-Yu Peng, Zhibin Shao, Yan Cao

发布于 2026-10-01
📖 1 分钟阅读☕ 轻松阅读

原作者: xuming wu, Zhipeng Ye, Gaoyuan Zhao, Zihao Lu, Jiayi Hong, Wen-Yu Peng, Zhibin Shao, Yan Cao

原始论文采用 CC BY 4.0 许可(https://creativecommons.org/licenses/by/4.0/)。 ✨ 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

在现代云端,大量的应用程序运行在一种被称为“无服务器计算”(serverless computing)的模型之上。系统并不会为了处理请求而让一台计算机服务器始终保持运行状态,而是仅在用户需要时才唤醒一个全新的、空白的环境,执行任务,然后让其进入休眠。这种方法节省了资金并减少了浪费,但它有一个令人沮丧的缺陷:当用户第一次请求某项服务时,系统必须从头开始构建该环境。这个过程被称为“冷启动”(cold start),会导致明显的延迟。为了解决这个问题,系统管理员可以保持其中一些环境处于唤醒并就绪的状态,这种策略被称为“预热”(prewarming)。然而,保持过多的环境处于唤醒状态会浪费该系统旨在节省的资源。挑战在于,究竟应该让哪些函数保持温暖以及保持多久,尤其是在有成千上万个不同的函数在争夺有限资源池的情况下。

研究人员开发了一种名为 BudgetFunnel 的新方法来解决这一平衡难题。其核心思想是将用于保持环境唤醒的总可用时间视为一个共享预算,必须在海量的工作负载中进行明智的分配。在典型的云系统中,可能会有数千个不同的函数,每个函数都有其独特的用法模式。有些函数被频繁使用,而另一些则使用频率较低,或者呈现出突然且不可预测的爆发式增长。如果管理员试图为每一个函数计算完美的“保持存活”时间以最大限度地减少延迟,那么计算本身所需的时间长到变得不切实际。BudgetFunnel 通过使用一个两步走的流程来解决这个问题,首先将其问题过滤到最关键的部分。

研究人员使用来自微软 Azure 和阿里巴巴两个主要云服务商的真实世界数据日志对他们的方法进行了测试。这些日志包含数百万条记录,显示了不同函数被调用的时间。团队首先使用一种简单、快速的检查方法,来识别哪些函数如果被允许变冷,可能会导致最大的延迟。他们观察了一些基础模式,例如函数的调用频率、使用的不规则程度,以及是否遵循某种每日节奏。基于这些简单的线索,他们仅选择了前百分之十的函数作为“候选对象”进行详细分析。其余的百分之九十则被赋予了一个默认设置零,这意味着系统不会尝试让它们保持温暖。

一旦确定了候选对象,研究人员就在这个规模较小的群体上运行了详细的模拟。他们测试了保持这些特定函数唤醒的不同时长,精确计算了每种选择所能节省的延迟量与所产生的资源成本。最后,他们使用一种贪心算法(greedy algorithm)将总共可用的“温暖时间”预算分配给这些候选对象。该算法的作用就像一位拿着固定金额的谨慎购物者,在选择升级方案时,会优先选择那些能以最小成本换取最大延迟缩减的方案。最终的结果是一个定制化的计划,为最重要的函数分配了特定的保持存活时间,同时忽略了其他函数。

研究结果表明,这种聚焦的方法非常有效。通过仅评估百分之十的函数,该系统实现的计算速度比尝试为每一个函数计算最佳设置的速度提高了九倍。尽管计算时间大幅减少,但结果的质量仍然非常高。在 Azure 数据上,衡量延迟请求占总流量百分比的指标,与进行全量评估的贪心算法(即分析所有函数)产生的结果相比,偏差仅在 1.54% 以内;在阿里巴巴的数据上,偏差也在 1.93% 以内。换句话说,该系统保留了几乎所有的潜在性能收益,同时避免了分析全部内容所带来的沉重计算成本。

该研究还将此方法与其他常见策略进行了对比,例如将所有函数保持在相同的固定温暖时间,或使用平均等待时间来预测保持时长。BudgetFunnel 显著优于这些标准方法,在阿里巴巴的工作负载中,它将冷启动率降低了高达 39%。研究人员证实,他们的方法具有鲁棒性(robust),这意味着即使他们改变了统计延迟的方式或调整了测试的具体时间间隔,该方法依然表现良好。他们还验证了所使用的贪心算法非常接近数学上的最优解,与认证的最优解相比,差异小于 2.6%。

这项工作表明,在复杂的系统中,通常可以通过不检查每一个细节来找到近乎最优的解决方案。通过使用粗略的过滤器来识别最关键的元素,然后仅在重要之处应用详细分析,管理员可以高效地管理资源,而不至于陷入无法完成的计算之中。BudgetFunnel 框架提供了一种实用的方法,使无服务器应用既能保持快速响应,又不会造成过高的成本,证明了通过一点点聪明的过滤,就能在管理云端的隐形机制方面发挥巨大的作用。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →