JVisualVM监控JVM-外网服务器

环境说明:
a:阿里云服务器Centos8.2
b:JDK1.8

1:增加JVM运行参数

java -jar 启动时添加一下参数:

-Djava.rmi.server.hostname=外网IP地址
-Dcom.sun.management.jmxremote.port=jmx端口
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote=true 

这部分要注意防火墙设置以及服务器安全组的设置。
启动jmx后除了java应用本身占用的端口外会额外占用三个端口,一个指定端口+两个随意监听端口,
这四个端口都必须开放防火墙限制,否则本地的JVisualVM 会无法连接。

使用telnet 调试端口是否可用:

出现这样的提示就表明可以外网连接jmx了。

2:使用JVisualVM连接

我的 JVisualVM.exe 在C:\Program Files\Java\jdk1.8.0_181\bin 目录下,也就是jdk目录。

1:添加远程主机

2:添加远程JMX连接

输入IP+端口即可连接成功(服务器防火墙设置没问题的前提下!)
效果图:

3:总结

其实这玩意在实际工作中没啥用,因为生产项目中不会开通jmx的端口。
还是熟练使用jstat、jmap、jstack、jps 等命令用处更大也更方便!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章