jconsole连接linux服务器查看JVM使用情况,服务器配置记录

这段时间,因为项目要上线,所以要进行压力测试,这就牵涉到要测试系统性能问题,查看JVM的使用情况是必不可少的,不然上生产后造成内存泄露就over了。服务器用的是阿里云的云服务器,预装的Centos,然后在本地用JDK自带的查看JVM使用情况工具jconsole来监控一下在高并发情况下JVM使用情况。 首先在配置服务器的JMX之前,在网上google的半天,看了一些文章后,觉得配置起来很简单,就是需要修改一下tomcat的启动文件就行了,所以就下手开始搞了。后来搞了半天竟然连不上,懊恼气愤之余,终于静下心好好看一下别人的文章,然后分析了一下,最后根据网上写的和自己的分析(这里主要参考http: //my.oschina.net/7shell/blog/72054,写的确实很详细,大家也可以参考一下),终于是配好了。然后才发现原来好简单,觉得自己刚开始有点弱爆了,下面就把自己的配置记录一下,方便以后查看。 首先配置tomcat的conf文件夹下面的catalina.sh文件,这个地方有些同学就简单的配置了一下,并没有涉及到访问权限和密码的配置,感觉这样不太好,毕竟是服务器是吧,总不能让人乱连接,配个密码总是好点^_^,访问权限和密码文件怎么搞呢,所以需要从别处 copy 一份过来,我们从jdk的安装目录 copy 一份过来修改一下,主要是增加访问用户和设置密码用,这里我们把配置文件放在conf文件夹下面首先进入tomcat的conf目录下 # cd /usr/local/tomcat/conf/ (这个是tomcat路径,根据自己tomcat安装路径吧) 然后 copy 一份用户文件到当前目录 # cp /usr/java/jdk1.6.0_41/jre/lib/management/jmxremote.password.template jmxremote.password # chmod 700 jmxremote.password (如果文件不可写,就修改一下文件的权限了) # vi jmxremote.password(在文档末尾加上自己的用户名和密码) testJmx 123456 最后 copy 一份访问权限文件到当前目录 # cp /usr/java/jdk1.6.0_41/jre/lib/management/jmxremote.access jmxremote.access # chmod 700 jmxremote.access (如果文件不可写,这里是修改一下文件的权限了) # vi jmxremote.access 在文档最后把monitorRole readonly controlRole readwrite 注释掉,然后把刚才添加的用户添加进去testJmx readwrite 接下来就要配置tomcat的配置文件了这里是修改一下catalina.sh文件 #cd /usr/local/tomcat/bin/ #cd vi catalina.sh 然后找到下面这句话 # ----- Execute The Requested Command ----------------------------------------- 在这句话上面加上下面这些配置文件,下面的配置文件及解释信息是直接拿过来的^-^ (参数意义依次是: -Dcom.sun.management.jmxremote 启用JMX远程监控 -Dcom.sun.management.jmxremote.port= 9004 使用端口 9004 (可随意指定只要不冲突) -Dcom.sun.management.jmxremote.authenticate= true 远程连接需要密码认证 -Dcom.sun.management.jmxremote.ssl= false 不使用SSL(SSL我试了多次都没有配置成功:P 暂时不开启) -Dcom.sun.management.jmxremote.access.file=/usr/local/tomcat/conf/jmxremote.access 使用指定的JMX帐号授权文件 -Dcom.sun.management.jmxremote.password.file=/usr/local/tomcat/conf/jmxremote.password 使用指定的JMX帐号文件)所以说就是要把下面信息加入到配置文件中去 # ----- JMX Config Start ----- JAVA_OPTS= "$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10207 -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.access.file=/usr/local/tomcat/conf/jmxremote.access -Dcom.sun.management.jmxremote.password.file=/usr/local/tomcat/conf/jmxremote.password" export JAVA_OPTS # ----- JMX Config End ----- 保存一下,然后启动tomcat就行可以用jconsole访问了最后如果访问还是连接不上的话,就可能是主机ip没有配置好,这时运行一下hostname -i,如果显示的是 127.0 .0 .1 ,这就需要配置一个hosts文件了 #vi /etc/hosts 把里面的主机地址修改为:主机地址 localhost:: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6主机地址 AY130509181338723805Z这样配置完全以后,就可以用jconsole连接,输入用户名和密码就可以访问进行监控了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值