小学妹问我:如何利用可视化工具排查问题?

有关JVM问题排查的可视化工具有很多,比如说JDK自带的jconsole、jvsualvm等,第三方有MAT、GChisto、GCView等。


jconsole查看内存回收情况

jconsole工具在JDK的bin目录下。

选中自己的进程,进入,会提示不安全的链接,继续点进去

就会看到整个JVM的概览

可以查看线程已经内存使用情况

还可以选中看JVM内存中某一块,比如说新生代的Eden区、Survivor区、老年代等。

还可以看VM概要,具体数据请看图中的内容

远程连接请参考:

https://blog.csdn.net/u012758088/article/details/78510985

jvisualvm查看内存回收情况

jvisualvm工具在JDK的bin目录下。,用法和jconsole类似;

双击

选择我们的进程

这个概述的东西相对较少

监视整体情况,CPU、堆、类、线程的情况

查看线程相关的数据

进入Profiler,点击内存,然后进入分析阶段,下面就会展示内存中对象的数据

在工作中就可以进行查看内存中对象的情况。

远程连接课请参考:

https://my.oschina.net/u/2300159/blog/812984

第三方工具

MAT

Java 堆内存分析工具。

GChisto

GC 日志分析工具。

GCViewer

GC 日志分析工具。

JProfiler

商用的性能分析利器。

arthas

阿里开源诊断工具。

  • https://github.com/alibaba/arthas

async-profiler

Java 应用性能分析工具,开源、火焰图、跨平台。

  • https://github.com/jvm-profiling-tools/async-profiler

关于第三方工具的使用,后面会有文章对每一个工具进行详细的演示和说明。如果把所有工具的详细步骤和使用相关注意事项都说一遍的话,篇幅量是相当大的。

持续更新中,敬请期待~

(0)

相关推荐