工具 VisualVM 对 dump 文件进行分析
VisualVM 是 JDK 自带的一个用于Java程序性能分析的工具。在JDK安装目录的 bin 文件夹下名称为 jvisualvm.exe。
概述
应用程序和运行时环境的基本信息
基本参数
- PID:应用程序的进程ID
- 主机:应用程序运行的系统地址
- 主类:运行了main方法的类
- 参数:应用启动时所传递的参数信息
- JVM:当前的JVM信息
- Java:当前使用的JDK信息
- Java Home:JDK的位置
- JVM标志:启动JDK时JVM使用的的标志
出现OOME时生产堆dump:当前出现OOME时生产堆dump功能的开启/禁用状态
保存的数据
- 显示VisualVM存储的当前应用程序的信息
详细信息
- JVM参数:配置的JVM启动的参数信息
- 系统属性 :JVM运行的系统属性
监视
展示监听的当前应用程序的整体情况
- CPU:CPU的使用百分比
- 内存:内存的占用情况,包括内存大小、最大值和已经使用的大小
- 堆:堆内存的大小和堆内存使用情况
- Metaspace:元空间内存的使用情况
- 类:显示了已经加载的类数量和共享类的数量
- 线程:显示了应用程序在JVM中生存和守护线程的数量
- 堆dump:执行堆dump,在新的标签页打开,查看dump的详细信息
线程
展示了应用程序的线程数据,包括所有线程数、活动线程数、完成线程数
线程dump:执行线程dump,在新标签页打开结果
抽样器
抽取CPU和内存的样例数据
设置——设置抽样参数
CPU抽样:
- CPU样例:展示了方法级别CPU性能(执行的时间及占比)
- 线程CPU时间:反映了线程执行占用cpu的时间和占比
内存抽样
- 堆柱状图:展示了内存占用情况
- 每个线程分配:展示了每个线程分配的内存以及占比
Profile
启动和停止本地应用程序的概要分析会话。
CPU:点CPU按钮,启动一个 CPU性能分析会话 ,显示 CPU 的使用率、方法的执行效率和频率等相关数据
内存:点击“内存”按钮将启动一个内存分析会话,等 VisualVM 收集和统计完相关性能数据信息,将会显示在性能分析结果
Visual GC
安装插件
工具——》插件
就会出现Visual CG 的标签
工具 VisualVM 对 dump 文件进行分析
https://flepeng.github.io/021-Java-42-JVM-工具-VisualVM-对-dump-文件进行分析/