G1GC调优时遇到的坑
发布时间:2021-04-19 20:50:47阅读:(175)
近期,出于某些原因,对线上项目进行JVM调优,希望能将年轻代大小固定下来而非动态分配,于是在启动参数上增加了-Xmn=3G
,结果上达到了预定,而然在查看监控是却发现,原本程序gc的STW时间只需要30ms左右,加完这个参数后却达到了300ms,相差近10倍,这是一个很严重的问题了

于是我去查了oracle关于g1相关的文档,终于找到了答案:
评估和微调 G1 GC 时,请记住以下建议:
年轻代大小:避免使用 -Xmn 选项或 -XX:NewRatio 等其他相关选项显式设置年轻代大小。固定年轻代的大小会覆盖暂停时间目标。
原本参数中设置了-XX:MaxGCPauseMillis=100,由于-Xmn属性导致此参数失效了,因此STW时间也随之边长了。
所以,在对JVM没有充分了解的时候,千万得谨慎调优!!!
Oracle原文地址:Garbage First Garbage Collector Tuning
文章版权及转载声明:
文章转载或复制请以超链接形式并注明出处陌上小筑
文章推荐
热门文章
- 使用rook在k8s管理ceph集群
- 如何拉取k8s.grc.io、quay.io的镜像
- 二进制方式搭建Kubernetes 1.19.3高可用集群(三)——部署controller-manager和scheduler
- 由cookie SameSite引起的坑
- 二进制方式搭建Kubernetes 1.19.3高可用集群(二)——部署ETCD集群和api-server
- 使用Spring ldap操作active directory
- Gitlab企业版证书生成
- G1GC调优时遇到的坑
- Jackson 2.11.0无法使用@JsonCreator反序列化枚举值
- Spring boot 2.4.2 redisson报错问题排查
标签云
站点信息
- 建站时间:2019年6月15日
- 文章统计:32篇文章
- 统计数据:百度统计
- 总访问量:44377
- 今日访问量:43
发表评论