微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

解决线上频繁GC问题步骤思路

1.查看监控,了解出现问题的时间点以及当前FGC的频率(可对比正常情况看频率是否正常)
2.了解改时间点之前有无程序上线、基础组件升级等情况
3.了解jvm参数设置,包括:堆空间各个区域大小的设置,新生代和老年代分别采用了什么垃圾收集器,然后分析jvm参数设置是否合理
4.再对步骤1中列出的可能原因做排除法,如元空间被打满、内存泄漏、代码显示调用GC方法
5.针对大对象或者生命周期长的对象导致的FGC,可通过jmap -histo 命令结合dump堆内存文件作进一步分析,需要先定位到可疑对象
6.通过可疑对象定位到具体代码再次分析,这时候要结合GC原理和jvm参数设置,弄清楚可疑对象是否满足了进入老年代的条件才能下结论

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐