阅读GC日志

        可以通过-XX:+PrintGCDetails日志收集参数,告诉虚拟机在发生垃圾收集时打印内存回收日志,并在进程退出时输出当前内存的各区域分配情况。 

 2.766: [GC (Allocation Failure) 2.766: [DefNew: 61826K->7616K(68800K), 0.0313370 secs] 92247K->38390K(221760K), 0.0314264 secs] [Times: user=0.07 sys=0.00, real=0.03 secs]

        2.766 - GC发生的时间,值为从虚拟机启动以来经过的秒数;

        GC - 垃圾收集的类型,GC/Minor GC代表本次收集发生在年轻代,Major GC/Full GC代表本次收集发生在老年代,老年代GC速度一般比年轻代GC慢10倍以上;Full GC(system)代表程序调用system.gc()触发的收集;

        Allocation Failure - 代表GC的原因是年轻代中没有足够的空间能够存储新的数据,Metadata GC Threshold代表永久代(从JDK8开始,使用Metaspace取代永久代的概念,Metaspace使用本地内存而不是堆内存)中没有足够的空间;

        DefNew - 代表GC发生的区域,显示的名称与使用的收集器密切相关,DefNew为Serial收集器中的新生代名称;

        61826K->7616K(68800K) - 代表该内存区域  GC前已使用容量->GC后已使用容量(总容量) ,单位为KB;       

        0.0313370 secs - 代表该内存区域GC耗时,单位为s;

        92247K->38390K(221760K), 0.0314264 secs - 代表Java堆  GC前已使用容量->GC后已使用容量(总容量),GC耗时;

        [Times: user=0.07 sys=0.00, real=0.03 secs] - 代表用户态消耗CPU的时间、内核态消耗CPU的时间、操作从开始到结束经历的墙钟时间(Wall Clock Time,包括I/O、线程阻塞等非运算等待耗时,CPU时间不包括等待耗时),系统为多CPU时,CPU时间会被多线程叠加,所以user或sys的时间超过real是正常的;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值