传统均值(Mean/Average)反映“全体期望”性能,但对极端值(长尾)“不敏感”。
Percentile Weighted Average:
指将多个指定分位点(如P50、P90、P99、P999等)的性能指标(特别是延迟/响应时间),按权重加权求和,得到一个兼顾整体与极端表现的综合量化指标。公式示例(以延迟为例):
其中wi为各分位点权重,Px为x分位点延迟。通常w4(如P999)可远高于均值权重,这样能严格关注极端尾部性能。
分位数加权平均:既关注大多数请求的均衡,又能量化少数极端慢请求的危害,让调度与优化关注“尾部性能”,真正提升端到端可靠性和体验。
背景:分布式服务、内核任务、数据库和I/O通常遇到长尾延迟问题。单看平均值很容易掩盖尾部延迟,引发SLA违约。
应用:
任务/IO调度评估指标不再仅看均值,而是Score = 0.4·P90 + 0.5·P99 + 0.1·P999,特别重视高分位点。
选用调度策略、参数、资源部署方案时,用Score排序而不是均值——选择Score更低(即极端性能更优)的方案。
Linux搜狐XFS等文件系统,部分云数据库调度用该方法。
背景:业务对“偶尔极慢”极其敏感(如支付、极低延迟交易、门户首页展示)。
做法:
利用分位数加权平均,当出现极端慢事件时,Score大幅上升,驱动OS/云原生平台自动迁移、扩容、或预警,避免长尾风险损害整体服务。
典型如Google Spanner、Amazon Aurora、Facebook Tectonic都用类似思想(也可结合SLA violations统计)。