JVisualVM的使用实录

一、前言

JVisualVM是一个Java虚拟机的监控工具,要是需要对JVM的性能进行监控可以使用这个工具哦

使用这个工具,你就可以监控到java虚拟机的gc过程了

那么,这么强大的工具怎么下载呢?

在JDK1.6后的版本是自带这个工具,它就在你的jdk的bin目录上

 如果是默认安装的JDK,一般就在C盘,Program Files的java目录,就会看到你的jdk版本,点进去之后打开bin这个文件夹,就可以看到这个软件了

二、启动JVisualVM

启动方法:

1.进入jdk安装目录的bin目录,双击打开这个程序

2.菜单键+R,输入cmd进入命令行模式,输入命令jvisualvm 启动程序。注:要是使用命令行启动的软件,命令框可不能关闭哦,关闭了的话JVisualVM也会被关闭,切记切记!!!

 

启动程序之后进入这个界面,这个就是JVisualVM的使用界面了

默认是没有jvisual GC页签的,需要自己下载

三、安装插件

使用之前,我们需要安装一个插件,来更好的来观察虚拟机的性能,点击上方的工具-插件

image-20210529022800418

在可用插件那里选择下载,安装一个VIsual GC的插件

一般会报错,因为默认的链接已经给转移了,需要在设置那里把默认的链接更改

点击设置,编辑,把URL更改一下

 

那URL填什么呢?先确定一下自己的jdk版本号,然后用以下链接去查看URL

确认版本号,可以菜单键+R,执行cmd,输入java -version来查看自己的版本号

 

 

我这边是102

那就在这个网站:https://visualvm.github.io/pluginscenters.html
找到自己版本号的地址,复制URL到设置那里

 

然后再可用插件哪里就可以看到所有的插件,我们选择 VIsual GC安装即可。

然后重启一下即可看到有visual GC这个选项了

四、使用

接下来我们看一下这个页面的具体信息,我在本地已经启动了一个普通项目,没有任务死锁跟死循环。

可以看到GC time是指发生了多少次的GC,图中就是发生了233次GC,就花了55.065s的时间,而下一行的Eden区,也是发生了2328次GC,花费的时间也是30.316s,Old老年代区发生了77次GC,花费24.729s

 左边的进度图,就是说明内存使用的情况,当图中的色块达到顶端的时候,就是内存满的时候,

当Eden区满的时候垃圾回收机制就进行一次GC,把非垃圾对象推送到s0区,给Eden腾出来空间,当Eden下次再满的时候,垃圾回收机制就对Eden区跟s0区进行GC,然后把非垃圾对象推送到s1区,当Eden再次满的时候Eden区跟s1区进行GC,把非垃圾对象推送到s0,非垃圾对象一直在s0跟s1区间进行转移,当对象的年代值超过15次时,把非垃圾对象推送到old老年区,当Eden区,s0,s1区,old区都满了的时候进行Full GC,Full GC的时候系统会进行STW,也就是系统当前线程暂停,方便清理,这时候是对用户使用有影响的,因此我们调优也主要是对Full GC来进行调整,尽量减少Full GC的次数。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值