使用jdk8自帶的Java VisualVM工具,通過JMX連接遠程Linux服務器的Tomcat監控其運行時性能(CPU、堆內存、類載入、線程)
背景:
線上系統部署後,希望實時監控其運行狀況,以期分析數據並做相應的系統優化(優化代碼、拓展內存、升級服務器CPU)
遠程:應用系統部署在CentOS的Linux系統上,web服務器是直接使用的Tomcat應用服務器。
本地:Windows 10,安裝jdk8。
操作步驟:
1、進入Tomcat/bin目錄,修改catalina.sh,找到如下內容“#—–Execute The Requested Command”,在其上添加以下配置,此配置不需要用戶名、密碼
1.1進入bin目錄,輸入:vim catalina.sh
1.2輸入:/Execute The Requested Command
1.3鍵入:大寫的 I (i)
1.4.在本行上方黏貼(Shift+insert)以下複製的內容:
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Djava.rmi.server.hostname=jangle.xyz
-Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"
- hostname是指定服務主機IP(或域名)
- jmxremote是開啓遠程jmx服務(port是端口號,ssl指是否使用ssl連接,authenticate指是否需要認證[即用戶和口令])
1.5添加完畢後,按ESC,鍵入冒號( : ),輸入wq,回車 (即保存並退出編輯器)
2、啓動或者重啓Tomcat
3、在本地Windows系統中打開JAVA_HOME/bin,打開jvisualvm.exe
4、 選擇“遠程”,右鍵,添加遠程主機。
5、添加完成之後,右鍵主機,添加JMX連接,輸入端口號9999
6、雙擊新建的連接,打開監控界面。
接下來,就是對visualVM的使用了(需要你對JVM各方面的知識有所瞭解,才能看懂並分析服務器的狀況,以做相應的優化。JVM的知識可學習:深入理解Java虛擬機一書)
參考文獻:https://blog.csdn.net/dongdong2980/article/details/78476393