首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

java.lang.OutOfMemoryError: GC overhead limit exceeded 有关问题分析和解决

2013-09-29 
java.lang.OutOfMemoryError: GC overhead limit exceeded 问题分析和解决在项目历史数据导入过程中,出现

java.lang.OutOfMemoryError: GC overhead limit exceeded 问题分析和解决

在项目历史数据导入过程中,出现了应用无法访问的情况。立刻对Weblogic进行分析,发现Weblogic的内存、线程等性能良好,Server也是Running的状态。随后查看了Weblogic日志,在日志中发现下述错误

java.lang.OutOfMemoryError: GC overhead limit exceededat weblogic.utils.http.HttpRequestParser.<init>(HttpRequestParser.java:94)at weblogic.servlet.internal.ServletRequestImpl$RequestInputHelper.<init>(ServletRequestImpl.java:2390)at weblogic.servlet.internal.ServletRequestImpl.<init>(ServletRequestImpl.java:105)at weblogic.servlet.internal.HttpConnectionHandler.<init>(HttpConnectionHandler.java:115)at weblogic.servlet.internal.MuxableSocketHTTP.<init>(MuxableSocketHTTP.java:40)Truncated. see log file for complete stacktrace

通过排查问题后得出造成此类问题的原因是,项目的一个模块在批量导入数据,程序需要New一个很大的对象,GC发现内存不够后,对内存进行回收,但是发现回收后的内存还不能满足大对象的需要。应此造成了内存溢出。

解决方案:调大Weblogic的启动内存即可。

热点排行