当前位置: 首页 > news >正文

马克·布鲁克揭秘负载均衡系统经济学:M/M/c 模型延迟随服务器数量渐近改善

关于我

我叫马克·布鲁克(Marc Brooker),喜欢打造实用且酷炫的东西,热衷于构建大型项目。此外,我还涉足机械加工、焊接、烹饪和滑雪等领域。我是西雅图亚马逊云服务(AWS)的一名工程师,主要从事自主人工智能(agentic AI)相关工作,尤其关注自主人工智能的安全性和策略。在此之前,我参与过 EC2、EBS、数据库、无服务器计算以及无服务器数据库等项目。本博客所表达的观点仅代表我个人。

链接

我的出版物和视频
Mastodon 账号 @marcbrooker
Twitter 账号 @MarcJBrooker
这个博客是由人工智能撰写的吗?

负载均衡系统的惊人经济学

M/M/c 模型的表现或许和你想的不一样。假设有个系统,有 `c` 台服务器,每台只能处理一个并发请求,且无内部队列。这些服务器在一个有无限队列的负载均衡器后面。平均来说,无限数量的客户端每秒向负载均衡器发 `c * 0.8` 个请求。也就是说,我们随 `c` 增加线性提高请求负载,让每台服务器负载恒定。请求到服务器后,平均要一秒处理。那客户端观察到的平均请求时间会怎么随 `c` 变化呢?
选项 A:随着 `c` 增加,平均延迟快速降低,渐近趋近于一秒(即排队时间趋近于零)。选项 B:保持恒定。选项 C:呈线性改善。选项 D:延迟呈线性恶化。凭直觉,你觉得延迟会是哪条曲线呢?

我在 Twitter 上问了粉丝同样的问题,得到了有趣的不同结果:深入分析这个问题能找出正确答案。首先,了解相关术语。在排队论里,这是个 M/M/c 排队系统,即泊松到达过程、指数分布的客户端服务时间和 `c` 台后端服务器。在电信流量工程中,它是 埃尔朗(Erlang) 延迟系统(或者,因术语多样,也叫 M/M/n)。我们能用排队论的经典结果——埃尔朗 C 公式 _E 2,n(A)_ 来分析这个系统,该公式根据服务器数量(`n` 即 `c`)和提供的流量 `A` 计算传入客户请求进入队列(而非立即处理)的概率。具体细节可参考 《电信流量工程手册》 第 194 页。以下是该曲线的基本形状(用相同参数):
沿着蓝色线到半饱和点(提供的负载为 2.5 rps),能看到概率约为 13%。再看紫色线的半饱和点(5 rps),概率仅为 3.6%。所以半负载时,5 台服务器的系统能不排队处理 87% 的流量;负载和服务器数量都翻倍时,能不排队处理 96.4% 的流量,意味着只有 3.6% 的请求会有额外延迟。

事实证明,这种改善确实渐近趋近于 1。Twitter 投票的正确答案是 A。用平均值衡量延迟有争议(尽管 也许不应该如此)。为避免争议,我们得知道百分位数是否以相同速率改善。用封闭形式计算有点复杂,但这个系统简单,我们能用蒙特卡罗模拟绘制结果。结果如下:
这完全是个好消息。中位数(p50)和平均线吻合得好,高百分位数(99 分位和 99.9 分位)也有类似形状,没隐藏问题。

这对云计算和服务经济也是好消息。随着 `c` 增大,相同利用率下能有更好延迟,或相同延迟下实现更高利用率,且每台服务器吞吐量不变。这不仅对大型服务有利,因为大部分好处在 `c` 相对较小时就有了。在和规模及分布式系统相关的问题中,很少有随 `c` 增加变容易的,这就是其中一个。

有一些合理的后续问题。我们随意选的 0.8 这个值会影响结果稳定性吗?答案是肯定的,但有一定限度。一旦平均到达率超过系统处理请求的能力,队列就会无限增长,延迟也趋于无穷大。在我们例子中,请求负载超过 `c` 时就会这样。更一般地说,这个系统要稳定,`λ/cμ` 必须小于 1,其中 `λ` 是平均到达率,`μ` 是服务器处理请求的平均时间。

M/M/c 模型中泊松到达和指数服务时间的假设对典型服务合理吗?我觉得虽不完全对,但有一定合理性。指数服务时间尤其不准,实际服务更接近对数正态分布,但这可能不重要,以后再详细讨论。

更新:丹·波茨(Dan Ports)在我的 Twitter 帖子下回复了一个精彩的 Twitter 线程,指向了 SoCC’14 的 《尾部延迟的故事:硬件、操作系统和应用层的尾部延迟来源》,该文章探讨了现实中的这种效应。

脚注

1. 有一定限度。一旦平均到达率超过系统处理请求的能力,队列就会无限增长,延迟趋于无穷大。在我们例子中,请求负载超过 `c` 时就会这样。更一般地说,这个系统要稳定,`λ/cμ` 必须小于 1,其中 `λ` 是平均到达率,`μ` 是服务器处理请求的平均时间。

<< 返回博客索引

相关文章

2021 年 8 月 5 日 » 延迟悄然来袭
2021 年 4 月 19 日 » 尾部延迟的影响可能比你想象的更大
2026 年 6 月 19 日 » 认识爱丽丝。爱丽丝很没耐心。

其他文章

2015 年 5 月 24 日 » 碳酸钠与拉面化意大利面

http://www.jsqmd.com/news/1048300/

相关文章:

  • 2026年6月最新天梭中国官方售后客户服务电话及线下网点地址 - 天梭服务中心
  • 2026重庆合规代账机构排行:四家靠谱服务商核心实力对比 - 起跑123
  • 2026 年 6 月前沿速报|上海江诗丹顿官方售后表壳拉丝抛光修复,上海江诗丹顿官方维修复古腕表拉丝磨损该手工复原还是整机打磨? - 亨得利官方维修中心
  • 权威认证!2026沈阳黄金回收龙头品牌,合扬高价合规双领先 - 奢侈品交易观察员
  • 2026年6月百达翡丽最新发布|全国统一售后服务热线与全覆盖网点地址、统一收费标准一览 - 速递信息
  • 校园防溺水作品投票搭建教程:合规评选+强防刷+零广告,政教处存档无压力 - 微信投票小程序
  • 2026年6月最新百达翡丽中国官方售后网点客户服务热线电话地址 - 百达翡丽服务中心
  • EI框架:多模态医学图像分析的早期干预新范式
  • LoadRunner 12.6 WebTours安装配置全攻略:避坑指南与性能测试环境搭建
  • DSP与MCU融合架构解析:哈佛架构、DMA与ESSI在嵌入式信号处理中的应用
  • 2026淮南中考100-200分,不用辍学,本地公办学校正规招录 - 我叫小周
  • 2026年,口碑爆棚的云南贡菜机构究竟藏着怎样的独特魅力? - 速递信息
  • AI工程前线日报:Mistral静默升级、Zed中文调试与RAG工具链实战
  • 基于NXP Processor Expert快速开发36V智能功率开关驱动
  • XXMI启动器:一站式游戏模组管理终极指南,告别繁琐配置的完整解决方案
  • 2026年6月最新浪琴中国官方售后热线及客户服务网点地址 - 浪琴服务中心
  • 68HC08调试利器:MON08 Multilink硬件连接与配置全解析
  • 2026 年 6 月戴尔全国官方售后网点全域地址更新核验报告 - GrowthUME
  • DSP配置寄存器心得与感悟
  • 如何制作微信图文投票活动?简易图文教程2026最新版(免费防刷+批量导入) - 微信投票小程序
  • 不用跑市区!昆明 2026 年 6 月深夜上门收奢侈品,远郊也能约 - 讯息早知道
  • 中古褪色、五金氧化包包别低价处理,重庆奢二网专业评估真实价值 - 讯息早知道
  • Dify生产环境API网关安全加固:7大策略与Nginx实战配置
  • 2026 万国售后全新规划:中国区全域售后服务网络更新优化,全国超 60 家官方服务门店完整地址、咨询电话统一汇总 - 万国中国服务中心
  • Kali Linux安装配置Burp Suite专业版完整指南
  • MPC5121e嵌入式主板:工业级低功耗与高可靠性的硬件设计解析
  • 2026大平层装修选型指南:中高端市场代表性品牌解析 - 速递信息
  • 2026年6月最新江诗丹顿中国官方售后服务电话地址热线及客服网点 - 江诗丹顿服务中心
  • 如何快速上手AI换脸工具:零门槛的完整指南
  • 合肥理工学校招生电话是多少?2026官网最新发布报考指南一览! - cc江江