jvisualvm-可视化java程序监控工具

1 概述
VisualVM( All-in-One Java Troubleshooting Tool) 是到目前为止随JDK发布的功能最强大的运行监视和故障处理程序, 并且可以预见在未来一段时间内都是官方主力发展的虚拟机故障处理工具。 官方在VisualVM的软件说明中写上了“All-in-One”的描述字样, 预示着它有性能分析、运行监视、 故障处理外, 还提供了很多其他方面的功能。 同时它对应用程序的实际性能的影响很小, 使得它可以直接应用在生产环境中。 这个优点是JProfiler、 YourKit等工具无法与之媲美的。
VisualVM在JDK 1.6 update 7中才首次出现, 但并不意味着它只能监控运行于JDK 1.6上的程序, 它具备很强的向下兼容能力, 甚至能向下兼容至近10年前发布的JDK 1.4.2平台,这对无数已经处于实施、 维护的项目很有意义。
2 VisualVM兼容范围与插件安装
VisualVM基于NetBeans平台开发, 因此它一开始就具备了插件扩展功能的特性, 通过插件扩展支持, VisualVM可以做到:
显示虚拟机进程以及进程的配置、 环境信息( jps、 jinfo) 。
监视应用程序的CPU、 GC、 堆、 方法区以及线程的信息( jstat、 jstack) 。
dump以及分析堆转储快照( jmap、 jhat) 。
方法级的程序运行性能分析, 找出被调用最多、 运行时间最长的方法。
离线程序快照: 收集程序的运行时配置、 线程dump、 内存dump等信息建立一个快照,
可以将快照发送开发者处进行Bug反馈。
其他plugins的无限的可能性……
3 启动
jdk安装目录D:\Program Files\Java\jdk1.8.0_151\bin\jvisualvm.exe
首次启动VisualVM后, 读者先不必着急找应用程序进行监测, 因为现在VisualVM还没有加载任何插件, 虽然基本的监视、 线程面板的功能主程序都以默认插件的形式提供了, 但是不给VisualVM装任何扩展插件, 就相当于放弃了它最精华的功能, 和没有安装任何应用软件操作系统差不多。
使用VisualVM的自动安装功能已经可以找到大多数所需的插件, 在有网络连接的环境下, 点击“工具”→“插件菜单”, 弹出如图4-11所示的插件页签, 在页签的“可用插件”中列举了当前版本VisualVM可以使用的插件, 选中插件后在右边窗口将显示这个插件的基本信息, 如开发者、 版本、 功能描述等。安装完插件, 选择一个需要监视的程序就进入程序的主界面了。

 
4  监控功能
VisualVM中“概述”、 “监视”、 “线程”、 “MBeans”的功能与前面介绍的JConsole差别不大

 
生成、 浏览堆转储快照
 


内存监控 

 

猜你喜欢

转载自blog.csdn.net/chy2z/article/details/80498038
今日推荐