一、输出dump文件
设置jvm参数,当内存溢出时输出Dump文件,dump文件名格式为xxx.hprof
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=文件生成路径
配置完后,如果后续程序发生溢出,会生成快照文件(文件后缀.hprof),一般dump文件都比较大,需要特定的工具进行分析。
二、分析dump文件
可使用JDK自带的jvisualvm、Jprofile、MAT等。
1、使用jvisualvm
(1)点击文件-》装入,选择需要分析的文件
(2)装入后
点击异常线程会显示发生异常时的日志
(3)点击类tab可以显示各个类实例占用的内存情况