JDK的bin目錄下面自帶了非常多的優(yōu)秀工具认罩,可以對系統(tǒng)進行性能分析箱蝠,查看CPU,內(nèi)存的消耗垦垂,dump日志分析等宦搬。在遇到性能問題,或者并發(fā)訪問問題的時候劫拗,不妨試用下這些工具间校,可以很方便的定位出性能的瓶頸點,也能幫助大家發(fā)現(xiàn)平時走讀代碼页慷,或者功能測試發(fā)現(xiàn)不了的問題憔足。
首先介紹下VisualVM:
如圖所示,該軟件主要有兩個功能酒繁,
本地程序的監(jiān)控:
可以監(jiān)控本地的java進程的CPU滓彰,類,線程州袒,的消耗情況揭绑,點擊線程dump也可以比較方便的查看當前的dump日志
查看遠程服務器的運行狀態(tài)
如果要遠程監(jiān)控tomcat服務器的運行狀態(tài),則需要修改下tomcat的配置
在catalina.sh中郎哭,或者bin下新建一個setenv.sh他匪,加上如下內(nèi)容
JAVA_OPTS='-Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false'
然后重啟tomcat。
然后添加jmx連接即可夸研。
image.png
而jconsole可以有多的維度來監(jiān)控java進程的運行狀態(tài)邦蜜,還可以很方便的檢查死鎖
image.png
關(guān)于dump日志的具體分析和如何利用visualVM分析系統(tǒng)并發(fā)問題,下一篇博文詳細介紹