在windows,打开C:\Program Files\Java\jdk1.8.0_221\bin\jvisualvm.exe
菜单工具--插件--可下载
找到Visual GC
安装
登陆linux服务器
vim /tmp/tools.policy 新建,复制下面的内容
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
连接jstatd
linux服务器启动jstatd jstatd -J-Djava.security.policy=/tmp/tools.policy -J-Djava.rmi.server.hostname=<public_ip>
jvisualvm上连接
在左边的导航窗口里,远程–右键–添加主机,输入ip,就会自动连接,显示正在运行的java程序,双击一个程序,可以在右边看到Visual GC
的tab页,就显示了当前程序的各个gc代内存使用
在【windows本地】使用过程
C:\Program Files\Java\jdk1.8.0_221\jre\lib\security\java.policy
最后添加一行
Permission java.security.AllPermission;
在大括号里面
windows需要管理员权限打开一个cmd窗口,运行
"C:\Program Files\Java\jdk1.8.0_221\bin\jstatd.exe" -J-Djava.security.policy=all.policy
打开jvisualvm.exe会自动连上,可以看到idea编辑器的进程
springboot开启jmx远程监控, 可以直接在idea的help–edit vm options 加入
idea, run--edit configuraitons--environment VM options 加入下面jvm参数
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=127.0.0.1
jvisualvm 右键添加jmx链接,下面任选一个格式
service:jmx:rmi:///jndi/rmi://127.0.0.1:9010/jmxrmi
127.0.0.1:9010