jvm gc fullgc定位分析

父文章 : 基于日志理解 cms 原理,为什么remark要stop the world?(理解CMS GC日志.)_个人渣记录仅为自己搜索用的博客-CSDN博客_cms原理



 

通过抽样拉取堆栈.

通过日志分析,我们能发现在ThreadProfileCollector类中LonItem对象,对应Retained Heap Size非常大,Retained Heap Size的意思就是当前对象被GC后,从Heap上总共能释放掉的内存。如下图:

JVM源码分析之MetaspaceSize和MaxMetaspaceSize的区别 (刚启动不久就gc,因为metaspace配置的比较小,遇到了gc一次)

JVM参数MetaspaceSize的误解

1. 一种是ygc过于频繁, 1秒钟一次, 最终能回收掉.

2.一种是fullgc,最终能回收掉.

     fullgc前dump,然后查看. fullgc后dump. 对比哪个类消失了.

    还有就是看一端时间的内存占用和比率,

     如果公司有长期快照最好, 对比gc前后的堆,meta,堆外存占用对比. 判断是什么原因导致的cms?  

    刚启动后的fullgc,而且老生代占用很低(自己维护的话,公司系统没有内存快照信息,就需要增加参数 -XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息)

    cms和全锁gc都算fullgc,会计算在jstat -gcutil的fullgc次数里.

    命令: jstat -gcutil xxx -10s 2 看占用率 ()

3. 一种是内存泄露,内存占用不断上升,如果不重启最终会oom.

     重启后关注一段时间
————————————————
版权声明:本文为CSDN博主「个人渣记录仅为自己搜索用」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fei33423/article/details/70941939

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值