首页/开发/软件测试速查/GC 与延迟尖峰

GC 与延迟尖峰

JVM 应用的 GC 常是延迟尖峰来源:关注停顿频率与时长、堆占用曲线、晋升与元空间;调优前先用 GC 日志确认停顿与业务延迟的时间对应关系。

软件测试速查开发更新于 2026-10-12

开启 GC 日志(JDK 9+ 示意)

开启 GC 日志(JDK 9+ 示意)
java -Xlog:gc*:file=gc.log:time,uptime,level,tags -jar app.jar
堆并非越大越稳:更大的堆可能带来更长停顿,容量与停顿需要一起权衡。
时间对齐停顿时间轴与业务延迟曲线对齐
复测要求调参后同负载复测,对比分位与停顿分布

易错点

  • 出现周期性延迟尖峰不看 GC 日志,误判为网络问题
  • 只看平均停顿忽略停顿时长分布,长尾被隐藏

数据来源与参考

  • Oracle JDK 官方文档:Unified JVM Logging
  • JDK 官方工具文档(jcmd、jstat)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌