使用 jstat 命令查看GC信息
命令格式:jstat -gc <pid> [间隔] [数量]
示例
- 查看pid为21856的进程GC信息,每100毫秒打印一次,共打印10次
- pid可以使用
jps -l
命令查看当前Java进程的pid
说明
名称 | 说明(单位:KB) |
---|---|
S0C | Survivor区中的To区容量 |
S1C | Survivor区中的From区容量 |
S0U | Survivor区中的To区目前已使用的空间 |
S1U | Survivor区中的From区目前已使用的空间 |
EC | Eden区的容量 |
EU | Eden区当前已使用的空间 |
OC | Old区的容量 |
OU | Old区当前已使用的空间 |
MC | 元空间(MetaSpace)的容量 |
MU | 元空间当前已使用的空间 |
CCSC | 压缩类空间大小 |
CCSU | 压缩类当前已使用空间 |
YGC | 年轻代当前GC次数 |
YGCT | 年轻代当初GC总时间 |
FGC | 当前 Full GC 的次数 |
FGCT | 当前 Full GC 的总时间 |
GCT | 当前 GC 所用总时间 |
还可以查看当前堆的使用占比和GC相关信息
命令格式:jstat -gcutil <pid> [间隔] [数量]
示例
说明
名称 | 说明 |
---|---|
S0 | To区当前使用占比 |
S1 | From区当前使用占比 |
E | Eden区当前使用占比 |
O | Old区当前使用占比 |
M | 元空间当前使用占比 |
CCS | 压缩类当前使用占比 |
YGC | 年轻代当前GC次数 |
YGCT | 年轻代当初GC总时间 |
FGC | 当前 Full GC 的次数 |
FGCT | 当前 Full GC 的总时间 |
GCT | 当前 GC 所用总时间 |
使用 jstat -options
命令,查看其它可以使用的参数
使用Java VisualVM工具
Java VisualVM是JDK自带的一个性能监控工具,在JDK安装目录中的bin目录下,找到 jvisualvm.exe ,就是此工具
打开后在工具–>插件–>可用插件中找到 Visual GC 这个插件进行安装(我这里已经安装过了,所以在已安装中)
安装之后,可以找到自己需要查看的进程,然后点击Visual GC那一栏,就能看到GC的相关信息
-DUWvmo0A-1625816433351)]
安装之后,可以找到自己需要查看的进程,然后点击Visual GC那一栏,就能看到GC的相关信息