Go GC 延迟预算化:把“偶发抖动”变成可管理指标

从症状到指标 当你只看吞吐时,GC 可能“看起来没问题”;一旦看 p99,就会发现 stop-the-world 和 assist 在放大尾延迟。 预算化方法 先定义延迟预算:例如 p99 < 80ms。 反推可接受 GC 时间占比。 约束对象分配速率和堆增长上限。 调优抓手 降低瞬时分配:对象复用、批量编码。 控制堆目标:结合 GOMEMLIMIT 与容器 limit。 拆分热点路径:让大对象远离高频请求路径。 必看图表 GC pause 分位数。 alloc rate 与 mutator utilization。 heap goal 与实际 heap 的偏差。 小结 GC 调优不是“追求最少回收”,而是“在业务延迟预算内稳定运行”。预算先行,参数才有方向。

2026年5月13日 · 1 分钟 · BvBeJ