阅读量:0
VisualVM是一个强大的Java应用程序监控和故障排查工具,它支持本地和远程监控Java应用程序。以下是一些关于在Linux上使用VisualVM的教程和指南:
远程监控JVM Linux服务器
- 修改JDK中JMX服务的配置文件:进入$JAVA_HOME的/jre/lib/management子目录下,复制jmxremote.password.template文件并修改权限。
- 修改env.sh文件:在JVM的启动配置中添加相应的JMX远程连接参数。
- Windows客户端配置:在JDK自带的VisualVM中,添加远程主机并进行JMX连接。
性能分析本地和远程Java项目
- 安装GC插件:为了方便观察GC的监控指标,安装VisualVM的GC插件。
- 远程Java应用监控:使用JMX或jstatd进行远程接入,JMX需要在应用启动时添加启动参数,而jstatd则不需要,但需要配置端口。
安装VisualVM
- 启动VisualVM:VisualVM可以独立的应用程序运行,也可以通过命令行工具启动。
- 插件安装:VisualVM支持通过插件中心安装额外的功能,如BTrace Workbench和Visual GC。
使用VisualVM进行性能分析
- 查看本地进程:启动VisualVM后,它会自动列出所有运行中的Java进程。
- 查看CPU、内存、类、线程运行信息:VisualVM提供了丰富的监控选项,包括CPU使用率、内存使用情况、类的数量和线程的数量。
- 查看线程详情:通过VisualVM,可以查看线程的状态,包括Running、Sleeping、Waiting、Park和Monitor。
连接到远程JVM
- 使用JStatD连接到远程JVM:在远程主机上启动JStatD守护进程,并在VisualVM中添加远程主机。
- 使用JMX连接到远程JVM:在启动脚本的JAVA_OPTS中添加JMX远程连接参数,并在VisualVM中添加远程主机。
通过以上步骤,您可以有效地使用VisualVM在Linux上进行Java应用程序的监控和性能分析。