【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具
4.1 概述
略
4.2 基础故障处理工具
4.2.1 jps:虚拟机进程状况工具
命令:jps [options] [hostid]
功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类,帮助获得相关ID
4.2.2 jstat:虚拟机统计信息监视工具
命令:jstat [option vmid [interval [s/ms] [count]]]
功能:查看程序的类加载、垃圾收集、运行期编译状况
4.2.3 jinfo:java配置信息工具
命令:info [option] pid
功能:查看全部和修改部分运行时可以修改的虚拟机参数,也可以获得System.getProperties的值
4.2.4 jmap:java内存映象工具
命令:jmap [option] vmid
功能:生成堆转储快照,查询finalize执行队列、java堆与方法区详细信息
4.2.5 jhat:虚拟机转储快照分析工具
命令:jhat
功能:简陋的分析堆转储快照
4.2.6 jstack:java堆栈跟踪工具
命令:jstack [option] pid
功能:显示当时各线程堆栈信息
4.2.7 基础工具总结
P148~P151
4.3 可视化故障处理工具
4.3.1 基于服务性代理的调试工具
命令:jhsdb hsdb --pid [pid]
4.3.2 jConsole:java监视与管理控制台
略
4.3.3 Visual VM:多合一故障处理工具
运行监测、故障处理、方法级性能分析、各种插件。
【可以使用BTrace动态、日志跟踪,插入一些原本不存在的调试代码】
4.3.4 JMC:可持续在线的监控工具
对应用透明,可查看JFR数据,JFR数据质量高于MBean以及其他代理方式,不只有结果,还有过程数据。
4.4 HotSpot虚拟机插件及工具
HSDIS:JIT生成代码反汇编