楼主: xlpxlpxlp

[WebSphere] WebSphere内存泄漏

[复制链接]
论坛徽章:
0
11#
 楼主| 发表于 2006-7-26 09:13 | 只看该作者
有headdump存在,而且确实有大对象申请报OutOfMemory的记录。不过加大初始内存后,headdump和javacore都没有了。
谢谢

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2006-05-11 15:55:152011新春纪念徽章
日期:2011-02-18 11:42:492013年新春福章
日期:2013-02-25 14:51:24
12#
发表于 2006-7-28 14:53 | 只看该作者
IBM提供的有个垃圾的堆分析器,建议使用jprofile,IBM自己做诊断也是使用JPROFILE来监空运行中的heap的.可以在空闲的时候查看谁的对象分配的空间没有释放掉,要在生产环境下监视一段时间

使用道具 举报

回复
论坛徽章:
10
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:53紫蛋头
日期:2013-02-04 15:17:54奥运会纪念徽章:铁人三项
日期:2012-08-01 09:32:10奥运会纪念徽章:自行车
日期:2012-07-18 17:29:41奥运会纪念徽章:射箭
日期:2012-07-09 15:55:40奥运会纪念徽章:拳击
日期:2012-07-05 14:24:10双黄蛋
日期:2012-04-16 16:21:442012新春纪念徽章
日期:2012-01-04 11:50:44ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282013年新春福章
日期:2013-02-25 14:51:24
13#
发表于 2006-8-1 15:42 | 只看该作者
最初由 xlpxlpxlp 发布
[B]现在设置了512初始内存,打开GC详细输出。
目前用到43%,还待进一步观察。
多谢yining。 [/B]



如何初始化JVM内存,能详细说说吗?
谢谢

使用道具 举报

回复
论坛徽章:
0
14#
 楼主| 发表于 2006-8-2 09:36 | 只看该作者
最初由 sunqihui24 发布
[B]


如何初始化JVM内存,能详细说说吗?
谢谢 [/B]


我是直接修改了配置文件
/opt/WebSphere/AppServer/config/cells/主机名称/nodes/主机名称/servers/服务器名称/server.xml
[PHP]
<jvmEntries xmi:id="JavaVirtualMachine_1" verboseModeClass="false" verboseModeGarbageCollection="true" verboseModeJNI="false" initialHeapSize="512" maximumHeapSize="1024" runHProf="false" debugMode="false" debugArgs="-Djava.compiler=NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7777" genericJvmArguments="-Dheadless=true" disableJIT="false"/>

initialHeapSize="512"  是初始内存
maximumHeapSize="1024" 是最大内存
verboseModeGarbageCollection="true"  是打开GC显示
[/PHP]

仅供参考

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2006-05-11 15:55:152011新春纪念徽章
日期:2011-02-18 11:42:492013年新春福章
日期:2013-02-25 14:51:24
15#
发表于 2006-8-11 17:13 | 只看该作者
websphere控制台也可以设置中虚拟机,进程定义中有设置堆大小,默认0是256mb,websphere有二中情况会出现headdump,一是申请的对象空间太大,如使用dom处理xml,这个可以通过设置堆大小,或者程序将xml文件设置小一点处理就可以了.另外是内存泄漏,比如说一个月出现一次,一般情况不太频繁,如果是这中情况,单纯的增大内存不能根本上解决,需要查看那些程序有泄露

使用道具 举报

回复
论坛徽章:
0
16#
发表于 2006-8-30 23:22 | 只看该作者
1.不要增加InitialHeapSize,用默认。(查IBM文档吧,不止一个这么说,并且有这么做的原因)
2.OOM首先要排除
(1) -Xmx偏低 (调高)
(2) 物理内存不够用(添加物理内存)
一般来说不是这个问题了。。。
3.对付java app OOM
(1) 收集javadump和heapdump (通过JVM参数和wsadmin可以随时生成)
(2) 通过javadump分析有无deadlock引起内存泄漏
(3) 通过heapdump分析哪个object在泄漏(我没分析出来过还)
4. Native code OOM?
不懂了

使用道具 举报

回复
论坛徽章:
0
17#
发表于 2006-9-16 14:55 | 只看该作者
这个问题在我们现在的项目中也是经常遇见的问题,应该是并发的数量过多,你要注意JDBC的连接情况,是不是有大的SQL语句在执行,我们是用了一个监听工具去查找在什么时候会出现这样的情况,看看是否要优化。后来我们有添加了一条内存,现在的情况有所好转!

使用道具 举报

回复
论坛徽章:
69
奥运会纪念徽章:射击
日期:2016-09-06 23:08:25马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:112013年新春福章
日期:2013-02-25 14:51:24复活蛋
日期:2013-02-18 11:25:01迷宫蛋
日期:2012-12-25 17:17:41复活蛋
日期:2012-12-21 17:41:38奥运会纪念徽章:沙滩排球
日期:2012-10-27 14:59:31ITPUB 11周年纪念徽章
日期:2012-10-09 18:03:32
18#
发表于 2006-12-7 19:47 | 只看该作者
up

使用道具 举报

回复
论坛徽章:
0
19#
发表于 2006-12-14 13:21 | 只看该作者
最初由 jinzhaohui 发布
[B]那heapdump有吗?其实大部分内存溢出都是应用的问题
而且往往和大对象申请(一次申请3M,4M甚至几十M)等
问题在一起。或者与应用的操作有关,比如没有对查询的
范围没有限制,一次操作的数据量过大等。
内存泄露还是比较头痛的:) [/B]



非常正确。

使用道具 举报

回复
论坛徽章:
0
20#
发表于 2006-12-15 14:46 | 只看该作者
另外我们也碰到过一次参数设置错误导致内存交换和GC频繁,从而导致内存使用达到100%而退出,这个参数就是数据库连接池缓存语句数目(好象是这个名字)设置的太大。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表