压测过程中TPS在压测3分钟左右时一路下降,想要远程监控下服务器的内存、GC,第一时间想到了 jvisualvm,简单…装起来…
-
jdk安装目录\bin下打开 Java VisualVM,打开工具插件,可用插件安装
勾选安装,sorry,网络不行,下载不下来,安装不了,打脸了吧,哎 -
下载个现成的总能装吧,下载地址https://visualvm.github.io/pluginscenters.html
com-sun-tools-visualvm-modules-visualgc .nbm
-
好了,安装完成,打开jvisualvm,输入远程连接地址:service:jmx:rmi:///jndi/rmi://IP:1099/jmxrmi
,额,咋回事,不受此JVM支持,神马鬼
-
解决此问题的方法:
(1) 在产品安装的服务器上安装目录/jdk1.8.0/bin添加配置文件jstatd.all.policy
创建文件命令:cat >>jstatd.all.policy
(2) 在配置文件中添加以下内容
修改文件命令:vim jstatd.all.policy
添加内容:
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
- 在需要远程连接的服务器执行命令
nohup $JAVA_HOME/bin/jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.logCalls=true &
- 在本地JDK18\bin下打开jvisualvm,添加远程主机,找到自己应用的进程,即可监控GC