jvmoom内存溢出导致jvmoomoom oom错误,并生成jvmoom dump文件以供后续分析;通过mat工具进行问题定位
发布时间
阅读量:
阅读量
文章目录
引言
引言
引言
- 2. 解析dump文件(借助Eclipse提供的可视化分析工具)
-
-
2.1 获取Windows版本并直接运行(适用于规模较小的dump文件)
-
2.2 获取Linux版本后上传至服务器并解压(适用于规模较大的dump文件)
- 3. 打开分析报告
-
- 3.1 使用浏览器浏览
- 3.2 使用eclipse的mat工具
-
前言
当所需的内存空间超过系统提供的内存容量时,会导致OOM错误;客户在线环境大约每两周就会挂一次钩,在此期间临时编写了一个启动应用的脚本,并且需要找出问题根源
1.生成Dump文件
1.1 让JVM在遇到OOM(OutOfMemoryError)时生成Dump文件
在应用中添加JVM参数:
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/log/sdc
1.2 在服务僵死时,jmap导出
执行jmap -dump:format=b,file=文件名 进程对应的pid
如:
jmap -dump:format=b,file=sdc.hprof 124108
