VisualVM通过JMX方式连接远程服务器

VisualVM是什么

‌VisualVM‌ 是一款免费的性能分析工具,主要用于监控和调优Java虚拟机(JVM)的性能。它提供了丰富的监控和分析功能,帮助开发人员诊断和解决Java应用程序的性能问题。

VisualVM的下载

官网下载地址
不过从JDK 1.6版本开始自带程序,在你安装JDK的bin目录下,我的如下图所示:
在这里插入图片描述

VisualVM的简单介绍

首页:
在这里插入图片描述

当我本地运行项目时会生成一条监控信息如下图:
在这里插入图片描述
在这里插入图片描述
为了更好的观察JVM的GC情况,我们可以在工具栏下找到Visual GC的插件并进行下载:
在这里插入图片描述
Visual GC视图:
在这里插入图片描述

JMX方式连接远程服务器(项目采用的war包形式部署)

编辑tomcat的catalina.sh文件,文件在tomcat的bin目录下,在catalina.sh文件中加入下列内容:

JAVA_OPTS="$JAVA_OPTS
-Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Djava.rmi.server.hostname=xx.xx.xx.xx【服务器IP地址】
-Dcom.sun.management.jmxremote.port=18999【端口号】
-Dcom.sun.management.jmxremote.rmi.port=39089【端口号】
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"

在这里插入图片描述

参数解释:
-Djava.protocol.handler.pkgs=org.apache.catalina.webresources
这个参数指定了用于处理URL协议的包名列表。在这个例子中,它告诉JVM使用Apache Tomcat的org.apache.catalina.webresources包中的协议处理器来处理特定的URL协议。这通常用于Tomcat等Web服务器,以处理资源请求。

-Djava.rmi.server.hostname=xx.xx.xx.xx【要连接的目标服务器地址】:
这个参数设置了RMI(Remote Method Invocation,远程方法调用)服务器的主机名或IP地址。RMI是Java的一种分布式对象协议,允许一个Java虚拟机调用另一个Java虚拟机上的对象方法。这里将其设置为xx.xx.xx.xx,意味着JMX客户端可以通过这个IP地址来连接JMX服务。

-Dcom.sun.management.jmxremote.port=18999【自己设置】:
这个参数设置了JMX远程监控的通信端口。JMX客户端将通过这个端口与JVM进行通信,以获取监控和管理信息。

-Dcom.sun.management.jmxremote.rmi.port=39089【自己设置,可以不设置,但是不设置的话每次重启之后都会分配一个随机端口,需要频繁开放端口很麻烦】:
这个参数设置了RMI注册表监听的端口。RMI注册表用于注册和查找RMI对象,JMX客户端通过RMI与JVM进行通信时,需要先通过RMI注册表找到JMX连接的RMI对象。

-Dcom.sun.management.jmxremote.ssl=false【生产环境不建议这么设置】:
这个参数指定了JMX远程通信是否使用SSL(Secure Sockets Layer,安全套接层)加密。这里设置为false,意味着JMX通信不加密,可能会面临安全风险。

-Dcom.sun.management.jmxremote.authenticate=false【生产环境不建议这么设置】:
这个参数指定了JMX远程通信是否需要进行身份验证。这里设置为false,意味着JMX客户端不需要提供用户名和密码就可以连接到JMX服务,同样可能带来安全风险。

如果开了防火墙,需要开放上面设置的两个端口,或者关闭防火墙。
云服务器要记得去控制台开放对应端口

在这里插入图片描述
VisualVM连接

在这里插入图片描述
在这里插入图片描述
输入上面设置的ip或主机与端口,端口号为Dcom.sun.management.jmxremote.port参数对应的
例如192.168.1.222:18999,其他的都可以不填,确定之后如果正常的话就可以看到效果了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机灵的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值