ps -ef |grep 项目名字 (获取pid)
jstat -gcutil 15364 5000 10 (每5S输出此进程的gc情况,一共输出10次)
输出结果如下:
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 62.43 74.04 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 74.38 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 74.93 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 75.65 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 76.01 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 76.30 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 76.91 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 77.00 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 78.06 21.08 47.23 261 10.810 0 0.000 10.810
0.00 62.43 78.54 21.08 47.23 261 10.810 0 0.000 10.810
S0:Survivor 区 YGC:从应用程序启动到采样时年轻代中gc次数
S1:另一个Survivor 区 YGCT :从应用程序启动到采样时年轻代中gc总耗时
E:年轻代 FGC :从应用程序启动到采样时full中gc次数
O:老年代 FGCT:从应用程序启动到采样时full中gc总耗时
P:永久代 jdk1.8无永久代 GCT :从应用程序启动到采样时年轻代+fullgc总耗时
jmap -heap pid (查看进程的内存使用情况)
输出如下:
using thread-local object allocation.
Parallel GC with 4 thread(s)//GC 方式
Heap Configuration: //堆内存初始化配置
MinHeapFreeRatio = 0 //对应jvm启动参数-XX:MinHeapFreeRatio设置JVM堆最小空闲比率(default 40)
MaxHeapFreeRatio = 100 //对应jvm启动参数 -XX:MaxHeapFreeRatio设置JVM堆最大空闲比率(default 70)
MaxHeapSize = 2082471936 (1986.0MB) //对应jvm启动参数-XX:MaxHeapSize=设置JVM堆的最大大小
NewSize = 1310720 (1.25MB)//对应jvm启动参数-XX:NewSize=设置JVM堆的‘新生代’的默认大小
MaxNewSize = 17592186044415 MB//对应jvm启动参数-XX:MaxNewSize=设置JVM堆的‘新生代’的最大大小
OldSize = 5439488 (5.1875MB)//对应jvm启动参数-XX:OldSize=
NewRatio = 2 //对应jvm启动参数-XX:NewRatio=:‘新生代’和‘老生代’的大小比率
SurvivorRatio = 8 //对应jvm启动参数-XX:SurvivorRatio=设置年轻代中Eden区与Survivor区的大小比值
PermSize = 21757952 (20.75MB) //对应jvm启动参数-XX:PermSize=
MaxPermSize = 85983232 (82.0MB)//对应jvm启动参数-XX:MaxPermSize=
G1HeapRegionSize = 0 (0.0MB)
Heap Usage://堆内存使用情况
PS Young Generation
Eden Space://Eden区内存分布
capacity = 33030144 (31.5MB)//Eden区总容量
used = 1524040 (1.4534378051757812MB) //Eden区已使用
free = 31506104 (30.04656219482422MB) //Eden区剩余容量
4.614088270399305% used //Eden区使用比率
From Space: //其中一个Survivor区的内存分布
capacity = 5242880 (5.0MB)
used = 0 (0.0MB)
free = 5242880 (5.0MB)
0.0% used
To Space: //另一个Survivor区的内存分布
capacity = 5242880 (5.0MB)
used = 0 (0.0MB)
free = 5242880 (5.0MB)
0.0% used
PS Old Generation //当前的Old区内存分布
capacity = 86507520 (82.5MB)
used = 0 (0.0MB)
free = 86507520 (82.5MB)
0.0% used
PS Perm Generation//当前的 “永生代” 内存分布
capacity = 22020096 (21.0MB)
used = 2496528 (2.3808746337890625MB)
free = 19523568 (18.619125366210938MB)
11.337498256138392% used
670 interned Strings occupying 43720 bytes.