1. 背景
线上分析GC的问题,从容了解服务的GC情况
2. 使用demo
YGC: 线程启动到现在YGC发生的次数 YGCT: YGC耗费的时间(秒) CCS: 压缩过的类空间的利用率
jstat -gcutil pid
jstat -gcutil pid 1000 : 每隔1s持续打印数据
jstat -gcutil pid 1000 5: 打印5次
如何计算一次YGC的耗时:17.558s/2402次 = 7.3ms
3. 如何打开GC打印日志的配置
-XX:+PrintGC
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-Xloggc:/path/to/gc.log
JVM重启了,会把之前的GC日志文件覆盖掉
-Xloggc:/path/to/gc-%t.log
-XX:+UseGCLogFileRotation: 配置日志滚动
-XX:GCLogFileSize=1M : 文件大小最大1M
-XX:NumberOfGCLogFiles=5: 最多5个日志文件