| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
11年前发布

使用visualvm 远程监控 JVM Tomcat And J2SE程序

VisualVM 提供在 Java 虚拟机 (Java Virutal Machine, JVM) 上运行的 Java 应用程序的详细信息。在 VisualVM 的图形用户界面中,您可以方便、快捷地查看多个 Java 应用程序的相关信息。(摘自官方) 

1.在服务器上配置 jstatd  security policy 文件

进人服务器的/usr/java/jdk1.6.0_26/bin目录中,在该目录下面建立一个新的文件jstatd.all.policy 文件中的内容为:

grant codebase "file:${java.home}/../lib/tools.jar" {     permission java.security.AllPermission;  };

2.修改服务器 hosts 文件中的 IP 地址

要使Java VisualVM 成功连接到远程服务器上,服务器端应该在 /etc/hosts 文件中把本机地址设为本机的 IP 地址。使用 hostname -i 命令查看,如果显示的是 127.0.0.1 或者与本机实际 IP 不一致的话,需要把 /etc/hosts 文件中相应的地址改为本机实际 IP 

3.运行 jstatd 守护程序

在服务器的/usr/java/jdk1.6.0_26/bin目录下,执行以下命令:

screen jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.logCalls=true

如果screen命令没有安装,请执行 </p>

#如果你使用APT软件包管理工具:  apt-get install screen  如果你使用yum软件包管理工具:  #yum install screen

进行screen命令的安装。jstatd开始运行后,使用 CTRL+A+D 断开 screen 界面,回到 shell 界面。如果想切换回 jstatd 运行界面的话,使用 screen -r -d命令即可


4.Tomcat或J2SE的配置

 服务器的 tomcat 配置 jvm 启动参数。  tomcat  catalina.sh 中添加如下参数:

JAVA_OPTS="-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -  Djava.rmi.server.hostname=192.168.5.85"

或这J2SE的程序启动时加入JVM的参数: </p>

nohup java -Djava.rmi.server.hostname=192.168.5.85 -Dcom.sun.management.jmxremote.port=9099 -Djava.ext.dirs=lib -cp . -jar mm7Gate.jar &


5.通过Java VisualVM </span>连接到服务器监控 </span>Java </span>程序</span></span></span>


 在Java VisualVM 程序窗口左侧 “ 远程 ” 项目右键选择 “ 添加远程主机 ” ,在弹出的对话框中输入远程主机的 IP 地址,确认提交后即可看到相应的远程主机和在上面运行的 Java 程序,连接成功后应该会显示 Jstatd 及其 PID 。

 

  通过以上方式连接服务器发现一个问题,如果没有经过第四步配置的程序也可被监控到,但是不能监控CPU 。提示我们建立 JMX ,建立 JMX 提示要求端口号。( JMX: Java Management Extensions ,即 Java 管理扩展 , 是一个为应用程序、设备、系统等植入管理功能的框架。 JMX 可以跨越一系列异构操作系统平台、系统体系结构和 网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用 。而 Visual VM是通过 JMX 来和远程 Java 应用联系的 )。我们都经过第4步配置后,再连接成功,就可以远程监控服务器性能,可以配合 jmeter 进行了一个长时间的加压,在加压过程中重点关注了系统资源的使用情况。

  d1.jpg
d2.jpg
d3.jpg

 

参考博文:

http://blog.chinaunix.net/uid-418401-id-2405564.html

http://ihuangweiwei.iteye.com/blog/1219302

</span>

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1398141914625.html
VisualVM Java开发