jps(Java Process Status):查看正在运行的Java进程
jstat(JVM Statistics Monitoring Tool):查看 JVM 的统计信息
jstat -gc 24388
输出字段:
S0C、S1C:Survivor 0 和 Survivor 1 区域的当前容量(KB)
S0U、S1U:Survivor 0 和 Survivor 1 区域的已使用空间(KB)
EC:Eden 区域的当前容量(KB)
EU:Eden 区域的已使用空间(KB)
OC:Old 区域的当前容量(KB)
OU:Old 区域的已使用空间(KB)
MC:元空间的当前容量(KB)
MU:元空间的已使用空间(KB)
CCSC:压缩类空间的当前容量(KB)
CCSU:压缩类空间的已使用空间(KB)
YGC:Young GC 事件的次数
YGCT:Young GC 事件的总时间(秒)
FGC:Full GC 事件的次数
FGCT:Full GC 事件的总时间(秒)
GCT:GC 总时间(秒)
jstat -gccapacity 24388
输出字段:
NGCMN、NGCMX、NGC:新生代最小容量、最大容量和当前容量
S0C、S1C、EC:Survivor 0、Survivor 1 和 Eden 区域的当前容量
OGCMN、OGCMX、OGC、OC:Old 代最小容量、最大容量、当前容量和容量
MCMN、MCMX、MC:元空间最小容量、最大容量和当前容量
CCSMN、CCSMX、CCSC:压缩类空间最小容量、最大容量和当前容量
YGC、FGC:Young GC 和 Full GC 事件的次数
jstat –gcutil 24388
输出字段:
S0、S1、E、O、M、CCS:Survivor 0、Survivor 1、Eden、Old、元空间、压缩类空间 区域的利用率
YGC、YGCT:Young GC 事件的次数和总时间
FGC、FGCT:Full GC 事件的次数和总时间
GCT:GC 总时间
jmap(JVM Memory Map):导出内存映像文件和查看内存使用情况
当前对象集的相关信息,类、类的实例个数、占用内存大小(建议输出到文件——jmap -histo 24388 >D:\用户目录\Desktop\1.txt)
jmap -histo 24388
jstack(JVM Stack Trace):打印 JVM 中线程快照
(建议使用jstack 24388 >D:\用户目录\Desktop\2.txt)
jstack 用于生成虚拟机指定进程当前时刻的线程快照(虚拟机堆栈跟踪)。线程快照就是当前虚拟机内指定进程的每一条线程正在执行的方法堆栈的集合。
jstack 24388
生成线程快照可用于定位线程出现长时间停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待等问题。这些都是导致线程长时间停顿的常见原因。当线程出现停顿时,就可以用 jstack 显示各个线程调用的堆栈情况以及线程运行状态。
JVisualVM是一个Java虚拟机的监控工具,要是需要对JVM的性能进行监控
目录在jdk目录下
可以看到各种信息,也可添加远程服务