WebSphere存在大对象导致内存溢出宕机

几天内宕机了两次,都是因为大对象吃爆了内存,诡异的是这两次的大对象竟然一个字节都不差,太诡异了吧,分析heapdump文件和javacore文件都没有头绪
注意Object的大小:

QQ图片20140212161452.jpg




还有heapdump的树状图(两次的都差不多):




附上两次产生的javacore文件

附件:

附件图标20140210.zip (978.98 KB)

参与24

21同行回答

niuphniuphit技术咨询顾问IBM
我看了一下你上传的javacore,发现你的JVM堆最大值设置有点小,你可以设置到3G来缓解该问题,如果资源够用可以设置到6G;应用程序方面,你可以看一下heapdump中什么对象占用了大部分,被什么类方法调用,然后去优化程序。像这种问题建议你下次传数据时把heapdump的占用大的堆栈的详细...显示全部
我看了一下你上传的javacore,发现你的JVM堆最大值设置有点小,你可以设置到3G来缓解该问题,如果资源够用可以设置到6G;

应用程序方面,你可以看一下heapdump中什么对象占用了大部分,被什么类方法调用,然后去优化程序。

像这种问题建议你下次传数据时把heapdump的占用大的堆栈的详细截图传一份,还有故障时间点的GC日志也传一个。收起
互联网服务 · 2014-02-12
浏览1106
moster33moster33软件架构设计师中科软
javacore中runnable的线程,逐个分析吧,也不会有太多,根据相关功能,然后到生产或测试环境复现根据你说的现象,应该是某个功能做某个操作引起的,不是并发。另外还要关注数据库,最好有发生问题时的awr...显示全部
javacore中runnable的线程,逐个分析吧,也不会有太多,根据相关功能,然后到生产或测试环境复现
根据你说的现象,应该是某个功能做某个操作引起的,不是并发。另外还要关注数据库,最好有发生问题时的awr收起
互联网服务 · 2014-02-20
浏览744
fwhtt934fwhtt934软件开发工程师中国石油
减少大对象。或者把大对象分拆位小对象显示全部
减少大对象。或者把大对象分拆位小对象收起
互联网服务 · 2014-02-19
浏览681
hnyzlboyhnyzlboy项目经理用友软件
给我发的问题类似 , 我遇到的问题也是大对象吃光了内存。可以把你的 JVM 设置成 1024-3076,再观察下,重点还的关注GC日志显示全部
给我发的问题类似 , 我遇到的问题也是大对象吃光了内存。可以把你的 JVM 设置成 1024-3076,再观察下,重点还的关注GC日志收起
互联网服务 · 2014-02-12
浏览714

    提问者

    zhangpeng759
    软件开发工程师北京文思海辉嘉讯科技有限公司

    相关问题

    相关资料

    相关文章

    问题状态

  • 发布时间:2014-02-12
  • 关注会员:2 人
  • 问题浏览:13121
  • 最近回答:2014-06-05
  • X社区推广