Jconsole是JDK自带的监控工具,在JDK/bin目录下能够找到。它用于链接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面。并且自己占用的服务器内存很小,甚至能够说几乎不消耗,不失为一款好工具。java
-------------Jconsole监视远程的linux服务器上的tomcat -----------------------------
环境:
服务器端: Linux + jdk1.60 + tomcat 7
客户端: Windows + jdk1.6.0 linux
一、linux服务器上的tomcat 的bin/catalina.sh文件,
在# OS specific support. $var _must_ be set to either true or false. 这一行以后, 加入如下参数: tomcat
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
通常是这样地:服务器
1.JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m" JAVA_OPTS=" -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false "
二、 linux服务器 执行hostname -i 命令,若是显示的是127.0.0.1,则须要修改/etc/hosts文件,不然jconsole没法连接。
# vi /etc/hosts,修改以下:
原值是: 127.0.0.1 localhost localhost.localdomain localhost
修改成: 服务器的真实IP地址 localhost localhost.localdomain localhost
3 linux服务器的防火墙,也要开相应端口.
4 客户端:
1. 打开cmd窗口,输入jconsole
2. 指定链接参数:
远程主机: 服务器的真实IP地址
端口: 9008
五、补充:因为配置了上述文件,在中止tomcat的时,会因为上述配置的端口被占用而没法停掉。2种方式解决:
(1)使用killall -9 java 杀掉全部的java进程。
(2)在catalina.sh中配置CATALINA_PID=pid,这样在中止tomcat的过程当中,上述被占用的端口会自动被杀掉。 dom
-----------------Jconsole监视远程的Windows服务器上的tomcat -------------------------
修改服务器tomcat的bin/catalina.bat文件, 在如下行:
rem Guess CATALINA_HOME if not defined
set CURRENT_DIR=%cd%
加入如下参数:工具
1.set JAVA_OPTS=-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
注意添加的位置:性能
重启服务器tomcat
打开cmd窗口,输入jconsole,链接。blog