JVM性能调优监控工具 jvisualvm.exe

Posted 幸福丶如此

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM性能调优监控工具 jvisualvm.exe相关的知识,希望对你有一定的参考价值。

一、问题现状

现实企业级Java开发中,有时候我们会碰到下面这些问题:
OutOfMemoryError,内存不足
内存泄露
线程死锁
锁争用(Lock Contention)
Java进程消耗CPU过高

二、hprof文件的生成

在运行时候添加JVM 参数:

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=自定义路径

三、tomcat中设置jvm参数

linux系统
1.打开/tomcat_home/bin/catalina.sh文件
2.加上:JAVA_OPTS="$JAVA_OPTS -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\\heapdump"
注:其中不设-XX:HeapDumpPath时,dump出的文件在/tomcat_home/bin目录下

Windows系统
1.打开/tomcat_home/bin/catalina.bat文件
2.加上:set JAVA_OPTS=%JAVA_OPTS% -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\\heapdump

四、jvisualvm 安装和使用

安装好jdk后,我们进到jdk的安装目录下,一般默认是 C:\\Program Files\\Java\\jdk1.8.0_261\\这个文件目录,然后在进到bin目录下找到 jvisualvm.exe 文件了
然后双击打开,打开之后我们可以看到以下界面

然后双击左上角的装入快照

文件类型选择堆

然后找到本地存放.hprof文件目录打开就可以了
打开之后我们点击类就会出现以下界面

可以看到我这个内存溢出文件是byte数组太多导致的。

注:在linux服务器上,安装好jdk后,直接命令行运行 jvisualvm即可。但是linux服务器需要带图形化界面。

以上是关于JVM性能调优监控工具 jvisualvm.exe的主要内容,如果未能解决你的问题,请参考以下文章

jvm调试工具类使用 (jvisualvm.exe)

如何使用JDK自带jvisualvm监控工具

JVM性能调优监控工具专题一:JVM自带性能调优工具

JVM性能调优监控工具专题一:JVM自带性能调优工具

JVM性能调优监控工具

JVM性能调优监控工具jpsjstackjmapjhatjstat使用详解