目标
应针对尾部离群的根本原因削减 p99。本工作流先定位 p99 尖峰的时间窗口与端点,检查最慢请求的调用链找出耗时所在,修复导致尾部的排队、锁竞争、GC 或慢依赖,最后在负载下复测确认 p99 下降且 p50 未退化。
步骤要点
- 定位 p99 尖峰的时间窗口与端点。
- 检查最慢请求的调用链定位耗时。
- 修复排队、锁、GC 或慢依赖等离群原因。
- 负载下复测确认 p99 下降且 p50 不退化。
# find endpoints with a long p99
histogram_query 'api_latency' --quantile 0.99 --group-by endpoint
验证
按顺序执行上述步骤后,逐项确认每个步骤的预期状态均已满足;只有全部预期状态成立,才认为本流程完成。若某一步未达到预期状态,应先按排错提示排查,不要跳过继续,以免掩盖问题。
排错提示
- 均值会掩盖尾部问题。
- 均匀采样会漏掉稀有慢请求。
- 只修 p50 不改善最差体验。
适用边界
- 需要延迟直方图或追踪。
- 尾部采样保留慢请求。