(1)先启动springBoot项目
java -Djava.rmi.server.hostname=122.9.xxxxx -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1100 -Dcom.sun.management.jmxremote.rmi.port=1100 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -server -Xms1024m -Xmx1024m -jar demo-0.0.2-SNAPSHOT.jar
主要参数:
java -Djava.rmi.server.hostname=122.9.xx.xx
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1100
-Dcom.sun.management.jmxremote.rmi.port=1100
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
注意1:-Djava.rmi.server.hostname是服务端的ip(也就是jar包所在的ip)
注意2:-Dcom.sun.management.jmxremote.rmi.port, 这个参数需要设置,网上很多没有这个参数导致jvisualvm链接失败。
注意3: 我设置的1100端口需要在云服务里开放这个端口,即便是禁用防火墙貌似也不行。
注意4: JDK是1.8的, 我在别的服务器上测1.7版本,远程连接不上。
注意5: -Dcom.sun.management.jmxremote.local.only=false 这个参数也可以试试
注意6: 以上参数要放在jar包前面。
以上就可以visualVM 连接1100端口了。 具体可查看参考连接。
连接不上的,可以通过telnet ip port 测试端口有没有问题。
-------------------------------------
安装jstat。
打开 jre/lib/security/java.policy 这个文件
添加这一行:permission java.security.AllPermission;
启动jstat服务:
jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=122.9.xx.xx -p 1101
注意1: 1101 端口需要在云服务器开放。
注意2:启动后,有个默认监听的端口,在服务器也需要开放,不然访问不通,如下图。
--------------------------------
安装GC监控插件。请查看参考连接。
参考:
https://viviliving.blog.csdn.net/article/details/108821558
https://blog.csdn.net/p358278505/article/details/81213747
https://blog.csdn.net/ljllxk001/article/details/97016520
本文参考链接:https://www.cnblogs.com/maohuidong/p/14827497.html