jvm 图形化工具之jconsole

Posted woxbwo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jvm 图形化工具之jconsole相关的知识,希望对你有一定的参考价值。

原先我们学习了jvm的命令行工具,现在我们来学习命令行的可视化工具jconsole:

技术图片

为了测试我们启动原先的springboot项目

jconsole工具

jconsole(Java Monitoring and Management Console)是一种基于 JMX 的可视化监视、管理工具,它管理部分的功能是针对 JMXMBean 进行管理,由于 MBean 可以使用代码、中间件服务器的管理控制台或者所有符合 JMX 规范的软件进行访问

jconsole集成了线程内存的可视化展示 .

1. 本地链接

技术图片

启动

技术图片

选择我们启动的进程,点击连接--不安全连接 进入到概览中如下:

技术图片

点击内存

技术图片

 堆内存一般站内存的1/3以下才正常。

线程

技术图片

解决死锁的方案

其余几个不详细介绍,感兴趣可以自己看看

2. 远程链接

(1). 将springboot项目打成jar包--mvn install

(2). 将jar拷贝到远程服务器上

(3). 配置好jvm 参数启动jar包

技术图片

jvm参数说明:

  • -Xms512m:JVM初始分配的堆内存
  • -Xmx512m:JVM最大允许分配的堆内存,按需分配
  • -XX:PermSize=64M:JVM初始分配的非堆内存
  • -XX:MaxPermSize=128M:JVM最大允许分配的非堆内存,按需分配
  • -XX:newSize=128M:新生代初始化内存的大小(注意:该值需要小于-Xms的值)。
  • -XX:MaxnewSize=128M:新生代可被分配的内存的最大上限(注意:该值需要小于-Xmx的值)
  • -Dcom.sun.management.jmxremote.port=9999 jmx远程连接端口
  • -Djava.rmi.server.hostname=192.168.152.128(填写自己的ip)
  • -Dcom.sun.management.jmxremote.ssl=false https验证为false
  • -Dcom.sun.management.jmxremote.authenticate=false 不进行身份认证

启动jar包:

由于命令太长我们写成启动脚本run.sh

技术图片

!#/bin/bash
nohup java -Xms512m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:MaxNewSize=128m -Dcom.sun.management.jmxremote.port=9999 -Djava.rmi.server.hostname=192.168.152.128 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar ./is-jvm-0.0.1-SNAPSHOT.jar &

 赋予run.sh可执行权限

chmod +x run.sh

 启动:

./run.sh

技术图片

表示启动成功

连接:

技术图片

出现如下图则表示连接成功

技术图片

 分析过程和本地连接是一样的,可以自己试试。

以上是关于jvm 图形化工具之jconsole的主要内容,如果未能解决你的问题,请参考以下文章

JVM虚拟机专题之图形化监控工具-VisualVM

JVM监控及诊断工具之JConsole以及Visual VM

使用JCONSOLE远程监控JVM

JVM 常用命令

JVM常用命令工具和图形化工具

UAVStack JVM监控分析工具:图形化展示采集及分析监控数据