2.2 VisualVM:多合一故障处理工具
VisualVM(All-in-One Java Troubleshooting Tool)
是到目前为止随JDK
发布的功能最为强大的运行监视和故障处理程序,并且可以预见在未来一段事件内都是官方主力发展的虚拟机故障处理工具。其有一个很大的优点:不需要被监视的程序基于特殊Agent
运行,因此它对应用程序的实际性能的影响很小,使得它可以直接应用在生产环境中。所在路径是E:\javaJDK\jdk1.8.0_60\bin\jvisualvm.exe
2.2.1 VisualVM 兼容范围与插件安装
此工具基于NetBeans
平台开发,因此它具备插件扩展功能的特性,通过插件扩展支持,VisualVM
可以做到:
- 显示虚拟机进程以及进程的配置、环境信息(
jps、jinfo
) - 监视应用程序的
CPU、GC
、堆、方法区以及线程的信息(jstat、jstack) -
dump
以及分析堆转储快照(jmap、jhat
) - 方法级的程序运行性能分析,找出被调用最多、运行时间最长的方法
- 离线程序快照:收集程序的运行时配置、线程
dump
、内存dump
等信息建立一个快照,可以将快照发送到开发者处进行Bug
反馈。 - 等等
VisualVM
具有很强的向下兼容能力:
特性 | JDK 1.4.2 | JDK 1.5 | JDK 1.6 local | JDK 1.6 remote |
---|---|---|---|---|
运行环境信息 | √ | √ | √ | √ |
系统属性 | × | × | √ | × |
监视面板 | √ | √ | √ | √ |
线程面板 | × | √ | √ | √ |
性能监控 | × | × | √ | × |
堆、线程Dump
|
× | × | √ | × |
MBean 管理 |
× | √ | √ | √ |
JConsole 插件 |
× | √ | √ | √ |
点击工具-->插件-->可用插件,然后选择相关插件即可进行联网安装。
当然也可以手动安装,这样首先需要在下载中心(
https://visualvm.github.io/pluginscenters.html
)下载相关*.nbm
包,点击“工具-->插件-->已下载”进行安装。