2023拉

jconsole使用

上一篇 / 下一篇  2012-02-20 13:19:55 / 个人分类:Java学习

  

一、JConsole远程监控Tomcat服务器 

  为了解决内存溢出的问题,会用到一些监视内存的工具,jconsole这个工具是jdk5.0自带的工具,所以如果你的jdk是5.0那么就不用去安装。 这个工具可以查看系统的 堆,非堆,线程,等等的一些整体的情况,从而可以判断出系统的一个大概的性能情况。 
那么配置如下:如果你是用tomcat,在 catalina.bat来设置set JAVA_OPTS=%JAVA_OPTS%  -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=7080 -Dcom.sun.management.jmxremote 
特别注意:-Dcom.sun.management.jmxremote.port=7080,这个端点是jconsole专用的,不要和你的系统的端点冲突。再启动你的应用。 
ok,配置好了后,就直接进dos命令 ,后 输入 java 回车, 再接着 输入 jconsole,它会弹出一个界面,你直接点“远程连接”的选项卡,主机就填你要监控的ip地址名,端口与 你配的-Dcom.sun.management.jmxremote.port 的端口一致就可以了,再连接就可以了。如果连接成功就会进入监控你的系统。

二、JConsole远程监控JBoss服务器 

Java 5.0采用JMX方式提供了一系列监视和管理虚拟机的API,随SDK一起发布的JConsole则是采用这些API实现监控虚拟机的使用工具。 JConsole能够提供被监控虚拟机的内存、线程、类的加载以及MBean等信息,从而能够对服务器的运行情况进行实时监控。
1、环境
服务器:Redhat Linux ES 3.0 + JDK 1.5.06 + Jboss 4.0.2
                ip地址:192.168.1.5
客户机:Windows + JDK 1.5.06
2、配置
修改java虚拟机启动参数
             在%JBOSS_HOME%\bin\run.sh文件中将
            JAVA_OPTS="$JAVA_OPTS -Dprogram.name=$PROGNAME "
            修改为:
           JAVA_OPTS="$JAVA_OPTS -Dprogram.name=$PROGNAME -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
          注意:9999表示监控的端口号,确保指定的端口不被占用;可以采用netstat -an来查看已经占用的端口;配合lsof -i:portnum 来查看占用端口的具体应用程序;另外如果开启了防火墙服务,请确保端口能够透过防火墙访问;
启动JBoss服务器
             ./run.sh -b192.168.1.5,必须通过-b参数指定Jboss服务器绑定的地址; 
连接远程虚拟机
         启动%JAVA_HOME%\bin目录下的JConsole,在弹出对话框的“远程”属性页的“主机名或ip”中输入192.168.1.5,在“端口”中输入9999,选择“连接”,就能查看到远程Jboss服务器的运行情况了。
 

TAG:

 

评分:0

我来说两句

Open Toolbar