【压力测试】linux下jconsole远程连接JVM 监控性能
2015年09月10日 14:24:03 作者:Jiaozn 分类:Tomcat 评论(0)因为项目要上线,测试需要进行压力测试,这就牵涉到要测试系统性能问题,需要查看JVM的使用情况。
服务器用的景安机房托管服务器,Centos6.x,然后在本地用JDK自带的查看JVM使用情况工具jconsole来监控一下在高并发情况下JVM使用情况。
cd /usr/local/jdk1.6.0_45/jre/lib/management cp jmxremote.password.template jmxremote.password chmod 600 jmxremote.access jmxremote.password
vi jmxremote.password,将 其中的:
# monitorRole mzxwswj # controlRole mzxwswj
井号注释取消掉。
其中monitorRole为只拥有只读权限的角色(监控),controlRole有更高权限读写等等(控制).
权限控制是由jmxremote.access文件控制,最后2行
monitorRole readonly controlRole readwrite
备注:新建单独用户的方法
在jmxremote.password文件中添加用户名和密码
在jmxremote.access文件中添加用户和权限
修改 vi /usr/local/tomcat/bin/catalina.sh
在# ----- Execute The Requested Command -----------------------------------------”上面添加下面的代码不换行
注意:符号一定要是linux的符号,有时候空格问题可能导致:linux tomcat无法启动
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=192.168.0.201 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true"
参数解释:
( -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帐号文件)
启动tomcat时候,启动不起来,日志文件提示
Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: www: www
则需要在/etc/hosts 添加 主机名字映射到IP地址的方法
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.0.201 www
连接方法:
远程进程:192.168.0.201:12345
用户名,密码为jmxremote.password中设置用户和密码
评论
发表评论