关于Jps/jconsole/jvisualvm远程无法连接问题总结

本地使用Jps/jconsole/jvisualvm远程连接服务器jvm的时候们经常会报连接超时等问题,这里除了网上搜出来的hostname、防火墙等常见问题外,这里我还列出一些其他的坑。

1、/tmp/hsperfdata_userName相关问题

java程序启动后会在/tmp/hsperfdata_userName(其中userName是当前登录用户)下自动生成一个以进程id为文件名的文件,这里存储了jvm运行相关信息,jps、jconsole、jvisualvm等工具的数据来源就是这个文件。如果排除了前面的问题外还是连不上,可以查看当前目录下是否有相关文件,如果没有,检查当前目录的读写权限,可能是没有权限,或者是java启动时进程文件存储位置被更改,通过参数-Djava.io.tmpdir来修改(重点检查tomcat相关参数)

2、jvisualvm通过jstatd启动后,默认是1099端口,可以通过 -p另外指定,这个时候有些同学开放了1099端口,本机通过telnet也能访问,但是 通过jps或jvisualvm死活连不上,总是报java.net.ConnectException: Connection timed out: connect错误。实际上,jstatd不但使用了1099端口,另外还随机指定了一个端口,通过netstat -anp |grep jstatd命令查看:

如图:必须把40127端口也打开才可以,特别是服务部署在阿里云,通过外网访问的同学特别注意,阿里云是有安全组的 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值