使用visualvm 连接远程服务器观察性能指标,可以使用jstatd提供的服务.通过以下几步可以轻松实现.
- 定义配置文件: 创建文件
jstatd.all.policy
并复制下列内容
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
- 使用jstatd连接
-J-Djava.security.policy=jstatd.all.policy
=号后面的是文件的绝对路径-J-Djava.rmi.server.logCalls=true
打开日志,如果客户端有连接过来的请求,可以监控到,便于排错-J-Djava.rmi.server.hostname=192.168.36.6
指明本机hostname对应的本机地址,确保该地址可以给客户机访问. 因为有的服务器hostname对应的ip不一定是外网能连上的 .最好在这里直接明确指定-p 1200
指定服务的端口号,默认是1099 .也是可选参数
开启jstatd监控的机器可以用下面的命令
jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.36.6 -J-Djava.rmi.server.logCalls=true
注意:后面两个参数可以省略.
- visualvm 连接
可以打开本机的jvisualvm.exe 找到 远程 ,右键->添加远程主机 ,添加完之后在主机上邮件 ->添加jstatd连接 完成之后 ,可以看到如下所示的监控机器: