用VisualVM和JConsole监控tomcat性能
最近要做性能測試,除了要測試系統(tǒng)能支撐用戶并發(fā)數(shù),還要統(tǒng)計應(yīng)用的對CPU,內(nèi)存使用情況。要測試的系統(tǒng)基于Java開發(fā),因此試著用VisualVM來監(jiān)控。VisualVM除了能監(jiān)控CPU和內(nèi)存使用情況,還能監(jiān)控和分析垃圾回收和線程,當(dāng)然這是更高級了,開發(fā)人員用的更多一點。JConsole是VisualVM的前身,VisualVM已經(jīng)內(nèi)置在JDK1.6里面了,如果安裝的JDK里面沒有,也可以去sun的網(wǎng)站去單獨下載JConsole和VisualVM。
我的測試環(huán)境是Solaris和tomcat,不同環(huán)境配置可能配置有差異。
1、修改Tomcat的啟動語句,將bin/catalina.sh文件vi編輯:
?????將原
?????JAVA_OPTS="-Xmx1024M -Xms512M -Xss3M"
?????export JAVA_OPTS
?????調(diào)整為
?????JAVA_OPTS="-Xmx1024M -Xms512M -Xss3M -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true"
?????export JAVA_OPTS
2、修改jmx配置文件
?????目錄切換至JAVA_HOME所在目錄
?????/jre/lib/management下,
?????a、將jmxremote.access、jmxremote.password.template權(quán)限調(diào)整為讀寫;
??????????chmod 600 jmxremote.password.template chmod 600 jmxremote.access
?????b、jmxremote.password.template文件重命名
??????????mv jmxremote.password.template jmxremote.password
?????c、vi jmxremote.password
??????????去掉
??????????# monitorRole QED
??????????# controlRole R&D?
??????????的#號(Solaris下可編輯模式下,可以使用x刪除光標(biāo)標(biāo)記處字符)
??????????:wq 保存操作
3、啟動Tomcat
?????./catalina.sh run
4、查看JMX啟動情況
?????netstat -a | grep -i 8999 查看端口占有情況
?????如機(jī)器8999端口被其他程序占用,可調(diào)整端口-Dcom.sun.management.jmxremote.port=????
5、客戶端機(jī)器可通過jconsole或visualvm對其進(jìn)行監(jiān)控
?????使用JMX方式,輸入url 用戶名、密碼即可訪問
??????url:遠(yuǎn)程主機(jī)IP:8999
??????用戶名及密碼(參考jmxremote.password文件) monitorRole只能讀,controlRole能讀寫
轉(zhuǎn)載于:https://www.cnblogs.com/testgirl/archive/2010/01/07/1641208.html
總結(jié)
以上是生活随笔為你收集整理的用VisualVM和JConsole监控tomcat性能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA系统和DOMINO通过LDAP集
- 下一篇: 乙肝疫苗该怎么打(转)