OOM之 heap space

服务器程序最近每隔一段时间就出现OOM Java heap space的问题。

一、首先到catalina.bat里面调整tomcat的堆内存参数:

-Xmx1536m -Xms1536m -Xmn1024m -XX:SurvivorRatio=4

弱发现还是无法解决问题;

添加如下信息打印出一个dump文件

-Xmx1536m -Xms1536m -Xmn1024m -XX:SurvivorRatio=4   -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=路径 	//此处可以写一个文件夹的路径会自动生产dump文件
-XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:../logs/gc.log	//此处可以写一个文件夹的路径会自动生产dump文件

通过eclipse的mat内存分析工具可以直接打开生成的dump文件

首先需要下载MAT

打开Window-perspective-Open perspective-others-Memory Analysis

通过Histogram、Dominator tree、Leak Suspects基本就可以看出是哪块代码出了问题。

猜你喜欢

转载自blog.csdn.net/qq_37515683/article/details/78273986