表4-1 SunJDK监控和故障处理工具
| 名称 | 主要作用 |
| jps | JVM Process Status Tool, 显示指定系统内所有的HotSpot虚拟机进程 |
| jstat | JMV Statistics Monitoring Tool, 用于收集HotSpot虚拟机各方面的运行数据 |
| jinfo | Configuration Info for Java,显示虚拟机配置信息 |
| jmap | Memroy Map for java, 生成虚拟机的内存转储快照(heapdump文件) |
| jhat | JVM Heap Dump Browser, 用于分析heapdump文件,它会建立一个HTTP/HTML服务器,让用户可以在浏览器上查看分析结果 |
| jstack | Stack Trace for Java,显示虚拟机的线程快照 |
表4-2 jps工具主要选项:
| 选项 | 作用 |
| jps -q | 只输出LVMID,省略主类的名称 |
| jps -m | 输出虚拟机进程启动时传递给主类main()函数的参数 |
| jps -l | 输出主类全名,如果进程执行的是Jar包,输出Jar路径 |
| jps -v | 输出虚拟机进程启动时JMV参数 |
表4-3 jsstat工具主要选项:
| 选项 | 作用 |
| -class | 监视类装载,卸载数量,总空间以及类装载所耗费的时间 |
| -gc | 监视Java堆状况,包括Eden区,两个Survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息 |
| -gccapacity | 监视内容与-gc基本相同,但输出主要关注Java堆各个区域使用到的最大、最小空间 |
| -gcutil | 监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比 |