gc

G1GC调优时遇到的坑

近期,出于某些原因,对线上项目进行JVM调优,希望能将年轻代大小固定下来而非动态分配,于是在启动参数上增加了-Xmn=3G ,结果上达到了预定,而然在查看监控是却发现,原本程序gc的STW时间只需要30ms左右,加完这个参数后却达到了300ms,相差近10倍,这是一个很严重的问题了 于是我去查了oracle关于g1相关的文档,终于找到了答案: 评估和微调 G1 GC 时,请记住以下建议: 年轻代大小:避免使用 -Xmn 选项或 -XX:NewRatio 等其他相关选项显式设置年轻代大小。固定年轻代的大小会覆盖暂停时间目标。 原本参数中设置了-XX:MaxGCPauseMillis=10……
  • 共1篇
  • 1