Java程序性能分析工具Java VisualVM(Visual GC)

Java程序性能分析工具Java VisualVM(Visual GC)

VisualVM 是一款免费的\集成了多个JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏、监控垃圾回收器、执行内存和 CPU 分析,同时它还支持在 MBeans 上进行浏览和操作。

在内存分析上,Java VisualVM的最大好处是可通过安装Visual GC插件来分析GC(Gabage Collection)趋势、内存消耗详细状况。

Java VisualVM的功能

一  Visual GC(监控垃圾回收器)

Java VisualVM默认没有安装Visual GC插件,需要手动安装JDK的安装目录的bin目露下双击jvisualvm.exe,即可打开Java VisualVM,点击菜单栏 工具->插件 安装Visual GC

Java程序性能分析工具Java VisualVM(Visual GC)

安装完成后重启Java VisualVM,Visual GC界面自动打开,即可看到JVM中堆内存的分代情况

Java程序性能分析工具Java VisualVM(Visual GC)

GC 的类型 Young GC 、Old GC、Full GC

内存溢出  out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。

内存泄露  memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。其实说白了就是该内存空间使用完毕之后未回收。

 

二 监视界面(cpu,类,堆,线程)

Java程序性能分析工具Java VisualVM(Visual GC)

三 线程界面

Java程序性能分析工具Java VisualVM(Visual GC)

四  Profile界面(性能剖析)

点击CPU 分析性能

Java程序性能分析工具Java VisualVM(Visual GC)

 

内存分析

Java程序性能分析工具Java VisualVM(Visual GC)

五 堆dump线程dump操作

Dump文件是进程的内存镜像,可以把程序的执行状态通过调试器保存到dump文件中

Java程序性能分析工具Java VisualVM(Visual GC)