通过jvisual VM连接远程服务器

1. 通过JMX连接(不支持Visaul GC插件)

以一个机遇SpringBoot项目的的打包编译好的jar文件为例,文件名为demo.jar

nohup java
-Djava.rmi.server.hostname=ipAddress  #ip地址
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1099 #设置端口 
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-jar /root/app/data-test-0.0.1-SNAPSHOT.jar > nohup.file 2>&1 &

需要注意的是hostname对应远程服务器的ip地址,同时在/etc/hosts文件中加入一条

#本机ipAddress    #hostName

由于启动参数过长,我们可以定义系统环境变量来表示

export JVM = '-Djava.rmi.server.hostname=#ipAddress -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false'

然后 source文件生效。

启动时我们就可以用如下的命令

nohup java $JVM -jar demo.jar  > nohup.file 2>&1 & 

然后打开jconsole或者jvisualvm远程连接即可。

 2. 通过jstatd连接(不支持CPU监控)

有些文章会在$JAVA_HOME/jre/lib/security/java.policy直接修改,本人我是不推荐的,能不动到原来的配置文件进来就不要碰到,而且在java.policy直接修改,赋予的权限太高,也不安全。

cd $JAVA_HOME/bin
# 新建安全策略文件
vim jstatd.all.policy
# 若没有配置 JDK 环境变量,file 后面添加 tool.jar 的绝对路径
grant codebase "file:${java.home}/../lib/tools.jar" {
   permission java.security.AllPermission;
};

启动jstatd

cd $JAVA_HOME/bin
# 启动命令:(启动成功后,没有报错且有日志输出就是正常的)
./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=66.22.33.44 -J-Djava.rmi.server.logCalls=true

## 解释:
# -J-Djava.rmi.server.hostname=66.22.33.44 这里要填的是公网IP
# -J-Djava.rmi.server.logCalls=true  是否开启日志,第一次配置最好开启,可以确定是否启动成功,如果是已经配置很多次了,能确保成功的,建议就把该日志关掉,因为该日志的产生量不小,容易撑爆硬盘

## 在生产环境的配置如下(去掉日志打印,加入后台运行):
./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=66.22.33.44 &

#端口默认1099
nohup ./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=66.22.33.44  -p port > nohup.file 2>&1 & 


参考:

https://blog.csdn.net/luosai19910103/article/details/75574725

https://blog.csdn.net/u010004317/article/details/82948040#commentBox

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值