ceacer 2 已发布 1月27号 分享 已发布 1月27号 Table of Contents 前记 之前看过 jvisualvm,但是那个时候对 JVM 并不是很熟悉,后面看了下八股文,看了下 JVM 的相关知识之后,发现多了解点 JVM 的东西,对我们 CRUD 其实是有指导意义的,就比如我们通常会 new 一堆的没有用到的对象出来,这些其实就是会占用 JVM 内存空间。其实很久之前就玩过了这个 jvisualvm,可惜年少不知 jvisualvm 的好,错吧 CRUD 当成宝。 看来有些时候,该看的,该学的,都不能偷懒。废话说了这么多了,那我们开始吧: 老版本 在JDK 对应的 bin 路劲下,存在这个对应的可执行文件,我在 JDK-17 的包下面没有找到(点击这里 VisualVM: Home,或者看文章后面),然后在 JDK 1.8 的包下面看到了 路径 启动 在 cmd 中 直接执行 jvisualvm.exe 就好,运行完了之后,就可以看到 jvisualvm 的程序界面了: 启动 安装插件 为了方便于我们更加直观的观察 Heap 堆的情况,我们可以来安装一个插件 Visual GC。 在 “工具 -> 插件” 中 工具->插件 找到 “设置 -> 编辑” 一般会报错,因为默认的链接已经给转移了,需要在设置那里把默认的链接更改 编辑插件地址 修改 URL 那URL填什么呢?先确定一下自己的jdk版本号,然后用以下链接去查看URL 确认版本号,可以菜单键+R,执行cmd,输入 java -version 来查看自己的版本号,比如我的 jdk8 是 91 的版本 访问网站:VisualVM: Plugins Centers, 找到自己对应的,比如我的就在下面的区间,找到下面的连接地址: 插件地址 修改完之后: 其实这个时候,已经可以看到可用插件就有 16个了 修改完之后查看 下载插件 勾选之后,点击安装就搞完了 勾选 visual GC 然后选择一个就对应的进程就可以看到了 查看 高版本 高版本需要单独下载,这里我们访问下官网,VisualVM: Download,下载最新的就好,下载完了之后,解压 修改配置文件 配置文件路径 配置文件 修改为自己的JDK 路径就好 修改 jdk 路径 启动 我们找到 bin 路径下面的对应的 exe 文件,双击启动 执行文件 启动之后的界面 启动 安装插件 采用同样的方式下载就好,不过,最新的不用我们再去找对应的插件地址了: 插件 找到 Visual GC 就好 ,install 就好 install 监控 我们来准备一段测试代码 import java.util.ArrayList; import java.util.List; import java.util.concurrent.TimeUnit; public class HeapTest { public static void main(String[] args) throws InterruptedException { List list = new ArrayList(); while (true) { list.add(new HeapTest()); TimeUnit.SECONDS.sleep(3); } } } 然后找到对应的线程ID,进入查看 监控 好了,就到这里吧,后面还有一些性能指标,这个大伙可以去搜索下看看。 评论链接 在其他网站上分享 更多分享选项...
推荐帖
创建账户或登录以发表评论
您需要成为会员才能发表评论
创建一个帐户
在我们的社区注册一个新账户。很简单!
注册新账户登入
已有账户?在此登录
立即登录