6. 虚拟机工具

前面几章,我们讲了Java虚拟机、虚拟机的内存结构、认识对象(创建、内存分配、访问定位)、对象的回收。

前面的准备都是理论基础,出现了问题,也能从原理上来剖析问题是如何出现的,本章开始,将学习借助工具如何解决问题,让我们的虚拟机的性能达到最优。

 

工具介绍:

Jps(JVM Process Status Tool):


作用:查看当前用户下的java进程信息

Jps详细说明

 

Jstat(JVM statistics monitoring tool):


 作用:查看 类装载、内存、垃圾收集、jit编译信息

Jstat操作说明

 

Jinfo(JVM Configuration Info):


 作用:实时查看和调整虚拟机各项参数

Jinfo详细用法

 

Jmap(Java Memory Map):


 作用:可以获得运行中的jvm的堆的快照,从而可以离线分析堆,以检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中什么对象最多,各种对象所占内存的大小等等

Jmap详细用法

 

Jhat(JVM Analysis Tool):


 作用:与jmap搭配使用,用来分析jmap生成的dump,jhat内置了一个微型的HTTP/HTML服务器,生成dump的分析结果后,可以在浏览器中查看

 Jhat详细用法

 

Jstack:


 作用:jstack是java虚拟机自带的一种堆栈跟踪工具

Jstack详细用法

 

JConsole:


作用:可以分析内存、线程、CPU情况、类情况、GC信息等等

JConsole详细用法

 

推荐一个虚拟机内存监控工具:VisualVM,一个比JConsole更全面的内存分析工具,感兴趣的可以去研究研究

 

下一篇类加载器

posted @ 2018-11-07 17:12  君哥~  阅读(222)  评论(0编辑  收藏  举报