JConsole是什么
从Java 5开始 引入了 JConsole 。JConsole 是一个内置 Java 性能分析器 , 可以从命令行或在 GUI shell 中运行 。您可以轻松地使用 JConsole(或者 , 它更高端的 “近亲” VisualVM )来监控 Java 应用程序性能和跟踪 Java 中的代码 。
1. 获取远程服务器的地址和可用端口号
我拿的是我自己的阿里云主机 , 服务器地址为39.107.68.142 , 端口号为8696
查看端口号是否可用: netstat -tunlp|grep 8696

我们可以看出上面的6969已经被使用 , 8696未被使用 。
查看进程启动的端口
netstat -antup |grep 32594查看端口监听情况
lsof -i:12342. 修改tomcat的启动脚本开启JMX
修改catalina.sh 脚本文件 在文件开头添加
JAVA_OPTS="-Djava.rmi.server.hostname=39.107.68.142 -Dcom.sun.management.jmxremote.port=8696 -Dcom.sun.management.jmxremote.rmi.port=8696 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
其中
-Dcom.sun.management.jmxremote.port=9696 //连接端口 , 自定义不要与已有的端口冲突
-Dcom.sun.management.jmxremote.rmi.port=8696 //这句一定要添加 , 不添加就无法成功
-Dcom.sun.management.jmxremote.authenticate=false //不需要密码登陆
-Dcom.sun.management.jmxremote.ssl=false //不需要安全证书
-Djava.rmi.server.hostname=39.107.68.142 //这个ip是自己服务器的外网ip
【使用jconsole监听Tomcat远程服务的配置方法】位置:

3. 重启tomcat服务
使用shutdown.sh关闭服务的时候可能会报Error: JMX connector server communication error: service:jmx:rmi://dusk:8696错误
不用管 直接杀掉 kill -9 进程号
查看进程:
ps -ef|grep tomcat然后启动服务 startup.sh
使用
netstat -tunlp|grep 8696 确认端口是否已经处于监听状态4. 开放端口号
如果我们开启了防火墙需要在防火墙中开放这个端口
查看防火墙状态service iptables status
开放端口:
(1)通过vi /etc/sysconfig/iptables 进入编辑增添一条-A INPUT -p tcp -m tcp --dport 8889 -j ACCEPT 即可
(2)执行 /etc/init.d/iptables restart 命令将iptables服务重启
如果是阿里云主机还需要再安全组中开放端口:

5.打开本地jconsole监控远程服务
在远程进程中输入: 39.107.68.142:8696 点击连接

然后就可以查看JVM允许状况

总结
JConsole是一种图形监视工具 , 用于监视本地或远程机器上的Java虚拟机和Java应用程序 。JConsole使用Java虚拟机的基础功能来提供有关使用Java Management Extensions技术在Java平台上运行的应用程序的性能和资源消耗的信息 。
以上所述是小编给大家介绍的使用jconsole监听远程Tomcat服务的方法 , 希望对大家有所帮助 , 如果大家有任何疑问请给我留言 , 小编会及时回复大家的 。在此也非常感谢大家对网站的支持!
- 单反相机都使用的PDAF相位对焦技术 PDAF是什么意思
- 使用虚拟机VMware安装Ubuntu 20.04的全部教程
- apple watch series 5使用技巧
- 解锁iPhone以使用iPhone配件是什么意思?
- 联通卡发什么短信到10010查话费和流量及免费短信使用量
- 10个乐高积木的创意手工和妙用,如何使用乐高积木做出简单的玩具
- 小蚁微单使用简评,如何评价小蚁微单相机
- 用手写输入法,设置手写输入法
- 快充对电池有伤害吗,如果使用快充会损坏电池吗
- 请问苹果手机可以用安卓模拟器吗 苹果手机可以使用安卓虚拟机
