定义

99 分位响应时间(P99 响应时间) = 在所有请求中,99% 的请求响应时间都比它更快,只有最慢的 1% 的请求比它更慢。

P99 = “最慢的那 1% 的用户体验”,用于衡量系统在极端情况下的稳定性,非常适合高并发、强 SLA 的系统(支付、直播、游戏、接口网关等)。

平均值会被部分极慢请求“拉低”,无法反映极端情况。中位数(P50)很好看,但不能说明峰值延时。P99 是系统瓶颈、队列、锁竞争、GC 暴涨、网络抖动的最佳暴露点

特别适合高并发场景:支付、直播间消息、微服务网关、数据库查询。

如何计算P99

直接从数据排序计算

1
2
3
# 假设 resp_times 是响应时间列表(单位 ms)
resp_times.sort()
p99 = resp_times[int(0.99 * len(resp_times))]

使用监测/压测工具自动计算

Prometheus + Grafana:histogram_quantile(0.99, rate(http_request_duration_seconds_bucket[5m]))

k6:自动输出 http_req_duration{p99}

JMeter:聚合报告里会显示 P99

APM(SkyWalking、Zipkin、New Relic、Datadog)也自动提供 P99/P999