内存溢出问题处理

最近出现了一个一个问题,接口同步数据的时候出现了内存暴涨的现象;
如图:使用VisualVM看了一下内存使用

image

image

环境信息:
JDK1.5

发现内存会突然暴涨,这个现象很奇怪,讲道理我的代码每次处理1000条数据,不可能会出现这种问题啊;
下一步我把内存dump下来:debug的时候添加vm参数
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\dump\
安装一个eclipse后,再安装一个插件MemoryAnalyzer,地址是http://download.eclipse.org/mat/1.12.0/update-site/

image

如图所示,内存使用占用80+的是一个ArrayList对象;然后进去看里面的内容;发现不是我写的接口;这下可以甩锅了;
不过还是得看到底为什么会出现这种情况;

配置远程访问:
-Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false

posted on 2021-10-22 11:16  长臂猿爱跳伞  阅读(42)  评论(0编辑  收藏  举报