咱們有時候須要遠程的監控jvm,監控jvm有兩種方式:java
1.jmx #測試能監控cpu和內存,線程tomcat
2.jstatd #測試後發現沒法監控cpu和內存,線程jvm
由此用jmx來監控,jmx的鏈接有兩種方式rmi和jmxmpide
1.以生產環境openfire3.10爲例:測試
openfire採用源碼的形式安裝:url
修改 openfire的啓動腳本 /var/openfire/bin/openfire.sh,在OPENFIRE_OPTS參數中添加jmx的配置spa
(tomcat等的jvm與此相似,在啓動腳本options添加參數)線程
2.配置jmx遠程監控。blog
在OPENFIRE_OPTS=「」中添加以下,此配置無需用戶密碼登錄內存
-Dcom.sun.management.jmxremote.port=19888
-Djava.rmi.server.hostname=192.168.3.219 #注意此處要填寫rmi方式鏈接主機,由於virtualVM採用此種方式鏈接,網上的坑走了不少彎路。
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
#此處沒有配置用戶和密碼去遠程監控
3.用客戶端java virtualVM 建立遠程鏈接