码迷,mamicode.com
首页 > 其他好文 > 详细

Jboss JMX监控性能 jconsole jvisualvm

时间:2016-01-07 01:30:09      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:jboss   监控   jmx   jconsole   jvisualvm   

最近遇到个Jboss的性能问题,为了排查问题方便,决定开启JMX,使用jconsole进行实时监控来分析性能。配置步骤如下:

详情见:https://docs.jboss.org/author/display/WFLY8/JMX+subsystem+configuration

1、配置服务端:

     a、分析WildFly的工具Jconsole,位置:${JBOSS_HOME}/bin/jconsole.sh;

          该脚本实际是调用JDK自身jconsole.jar、tools.jar和WildFly自身jboss-cli-client.jar,详情见脚本jconsole.sh

          技术分享

     b、打开${JBOSS_HOME}/modules/system/layers/base/org/wildfly/extension/io/main/module.xml,添加如下红色标记三行

          <dependencies>

               <module name="sun.jdk"/>

               <module name="org.jboss.staxmapper"/>

               <module name="org.jboss.as.controller"/>

               <module name="org.wildfly.security.manager"/>

               <module name="org.jboss.as.server"/>

               <module name="org.jboss.as.security" optional="true"/>

               <module name="org.jboss.msc"/>

               <module name="org.jboss.logging"/>

               <module name="org.jboss.xnio"/>

               <module name="org.jboss.xnio.nio" services="import"/>

               <module name="org.picketbox" optional="true"/>

               <module name="org.jboss.remoting" export="true"/>

               <module name="org.jboss.remoting-jmx" export="true"/>

               <module name="javax.api"/>

          </dependencies>   

     c、打开${JBOSS_HOME}/domain/configuration/domain.xml文件,修改每个profile的如下jmx标签,添加红色部分

          <subsystem xmlns="urn:jboss:domain:jmx:1.3">

               <expose-resolved-model/>

               <expose-expression-model/>

               <remoting-connector use-management-endpoint="false"/>

          </subsystem>

     注以上两步已在8.1.0版本中修复,无需修改!!!

2、添加监控用户:

     a、 使用${JBOSS_HOME}/bin/add-user.sh添加Application User,此处必须为Application User

          技术分享

     b、把创建的用户在jboss管理控制台中赋权,打开http://10.19.xx.xx:9990控制台

          技术分享

     c、上述三步执行完成后,重启WildFly服务器,然后执行${JBOSS_HOME}/bin/jconsole.sh

3、使用远程的jconsole或者jvisualvm监控

     a、本机安装jdk,将jboss-client.jar下载下来(jboss的bin目录下有)

          技术分享

     b、运行jconsole,执行命令:jconsole -J-Djava.class.path="C:\Program Files (x86)\Java\jdk1.7.0_10\bin\jboss-client.jar;C:\Program Files (x86)\Java\jdk1.7.0_10\lib\jconsole.jar;C:\Program Files (x86)\Java\jdk1.7.0_10\lib\tools.jar"

          输入远程调用service,例如:service:jmx:http-remoting-jmx://10.19.xx.xx:8080,填写之前创建的用户名和密码即可

          技术分享技术分享

          说明:端口即为server的http服务端口,比如该host上创建了两个server,server1端口为8080,server2端口为8180

               如果输入service:jmx:http-remoting-jmx://10.19.xx.xx:8080,即为监控server1

               如果输入service:jmx:http-remoting-jmx://10.19.xx.xx:8180,即为监控server2

               如果输入service:jmx:http-remoting-jmx://10.19.xx.xx:9990,即为监控domain controller的JVM进程(此时必须填写超级管理用户和密                                                                                                                                                      码)

     c、运行jvisualvm,执行命令:jvisualvm -cp:a "C:\Program Files (x86)\Java\jdk1.7.0_10\bin\jboss-client.jar"

               配置和jconsole一致


本文出自 “我们来调优吧” 博客,请务必保留此出处http://luckydeluke.blog.51cto.com/10521529/1732230

Jboss JMX监控性能 jconsole jvisualvm

标签:jboss   监控   jmx   jconsole   jvisualvm   

原文地址:http://luckydeluke.blog.51cto.com/10521529/1732230

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!