jps, jstack, jmap, jhat, jstat
* jps: (java process status), Java进程状态, 详细参考 man jps - 格式: jps [options] [hostid] * -l: 显示main方法的全限定类名或jar包的全路径 * -m: 显示main方法的参数 - 示例: * jps * jps -l * jstack: 查看某个Java进程的线程栈信息 - 格式: jstack [options] [pid] - 示例: * jstack pid * jmap: 打印某个Java进程的堆内存信息 - 格式: jmap [options] [pid] - 示例: * jmap -heap pid 查看进程堆内存使用情况 * jmap -dump: format=b, file=xxx.dump * jmap -histo:live pid | more 查看实例数和实例所占内存大小 B byte C char D double F float I int J long Z boolean * jhat: (Java Heap Analysis Tool) Java堆分析工具 * jstat: JVM统计监测工具 - 格式: jstat [ generalOption | outputOptions vmid [interval[s|ms] [count]] ] - 示例: jstat -gc pid 250 4 # 采样间隔205ms, 采样数为4 * 堆内存 = 年轻代 + 年老代 + 永久代 * 年轻代 = Eden区 + 两个Survivor区(From和To) ``` S0C、S1C、S0U、S1U:Survivor 0/1区容量(Capacity)和使用量(Used) EC、EU:Eden区容量和使用量 OC、OU:年老代容量和使用量 PC、PU:永久代容量和使用量 YGC、YGT:年轻代GC次数和GC耗时 FGC、FGCT:Full GC次数和Full GC耗时 GCT:GC总耗时 ```