jvm性能分析参数
jstack(查看线程)、jmap(查看内存)、jstat(性能分析)
ps aux | grep message-platform
实时查看该pid,所有对应的进程情况
top -p 23610
查看该进程下的所有线程占用资源情况。
top -Hp 23610
异常情况:
查看当前线程数
ps p 23610 -L -o pcpu,pid,tid,time,tname,cmd > ~/10495ps.txt
查看线程的使用情况
jstack 23610
异常情况:
正常情况:
将获取的线程号(十进制数)转换成十六进制
printf "%x\n" 3046 44a8
jstat -gc 23610 1000
正常:
异常:
参数定义
-S0C
:年轻代中第一个survivor(幸存区)的容量 (字节)
-S1C
:年轻代中第二个survivor(幸存区)的容量 (字节)
-S0U
:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)
-S1U
:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)
-EC
:年轻代中Eden(伊甸园)的容量 (字节)
-EU
:年轻代中Eden(伊甸园)目前已使用空间 (字节)
-OC
:Old代的容量 (字节)
-OU
:Old代目前已使用空间 (字节)
-PC
:Perm(持久代)的容量 (字节)
-PU
:Perm(持久代)目前已使用空间 (字节)
-YGC
:年轻代垃圾回收次数
-YGCT
:从应用程序启动到采样时年轻代中gc所用时间(s)
-FGC
:老年代垃圾回收次数
-FGCT
:老年代垃圾回收次数
jstat -gcutil 23610
S0、S1
代表两个Survivor区;E
代表 Eden 区;O(Old)
代表老年代;P(Permanent)
代YGC(Young GC)
代表Minor GC;YGCT
代表Minor GC耗时;FGC(Full GC)
代表Full GC耗时;GCT
代表Minor & Full GC共计耗时。
jmap -heap 23610
永久带异常,引发的现象
printf “%x\n” 27943 6d27
printf “%x\n” 27938 6d22
printf “%x\n” 27941 6d25
printf “%x\n” 27939 6d23
printf “%x\n” 27940 6d24