JVM监控工具介绍

常用的JVM监控工具介绍

1. Visual Vm :Java性能分析工具,提供了可视化的监控界面。可以很方便的监控JVM的运行状态,包括 堆的各个区内存使用情况,Minor Gc和FULL gc的使用情况

官方主页:http://visualvm.java.net/

下面以eclipse运行为例子,简单看看Visual Vm的监控功能。

启动VisualVm,再启动Eclipse.就可以在VisualVm上看到Eclipse的线程。

可以看到多个TAB页

其中

JVM监控工具介绍_第1张图片

Overview中可以看到eclipse启动时配置的参数

JVM arguments的参数和eclipse.ini中配置的启动参数是一致的

可以看到,我的eclipes配置

堆大小最小是40mb,最大是384mb.

老年代最大的空间是256mb


Monitor页中

JVM监控工具介绍_第2张图片


可以监控堆内存的使用状况,可以看到堆内存的扩容是动态的

其中还自带了执行GC的功能以及DUMP GC日志的功能


如果我们希望看到eclipse启动时的GC情况,我们可以下一个扩展插件。在TOOL->Available-Plugins->Visual GC 点击Install,可以下载并安装

安装完以后,会多出一个TAB,Visual GC.可以看到GC的具体情况咯

JVM监控工具介绍_第3张图片


从上图中可以看到,

堆内存被分成了

一个Eden:23.625mb 新生代

两个Surviver:2.938*2mb 新生代

一个Old Gen:354.500mb 老年代

Eclipse启动至今

Eden Space即新生代做了877次GC 即Minor Gc 耗时3.48秒

OLD GEN 即老年代做了20次GC 即FULL GC 耗时为6.985秒。

加载类21394个 18.553秒

Compile Time: 3.7秒。JIT编译哦。热点代码编译



2. jdk自带虚拟机性能监控与故障处理工具,工具位于jdk_home/bin目录下
jps:JVM Process Status Tool:显示指定系统内所有的HotSpost虚拟机进程 
jstat: 用于收集HotSpot虚拟机各方面的运行数据
jinfo:显示虚拟机配置信息
jmap:生成虚拟机的内存转储快照
jhat:用于分析heapdump文件,它会建立一个HTTP/HTML服务器,让用户可以在浏览器上查看分析结果
jstack:显示虚拟机的线程快照

你可能感兴趣的:(JVM监控工具介绍)