websphere内存溢出处理常用方法带截图

websphere内存溢出处理常用方法带截图

ID:13502499

大小:616.50 KB

页数:7页

时间:2018-07-23

websphere内存溢出处理常用方法带截图_第1页
websphere内存溢出处理常用方法带截图_第2页
websphere内存溢出处理常用方法带截图_第3页
websphere内存溢出处理常用方法带截图_第4页
websphere内存溢出处理常用方法带截图_第5页
资源描述:

《websphere内存溢出处理常用方法带截图》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、WebSphere内存溢出处理1.jvm大小调整到768-1.5g,不要超出1536(MB)。对于32位JDK如果初始值超过2048(即2GB的JVM堆大小),将导致JVM初始化失败,websphere服务器无法启动。经验:如果使用超过1.5GB的JVM大小,就有可能出现古怪的内存分配失败问题。(websphere6.1使用IBMJDK5.0,针对大对象的内存分配做了处理。)注意:调整JVM堆大小是最后应该考虑的手段,因为增大JVM同时也会增加垃圾回收的系统暂停时间。2.IBMJDK5.0有4种垃圾回收机制可针对不同问题使用。命令:-Xgcpo

2、licy:

3、optavgpause

4、gencon

5、subpool>lOptthruput默认的回收策略,不使用并发标记。如果用户没有因为内存回收时系统暂停时间过长问题,可以保持这个默认的参数。lOptavgpause如果内存回收时导致系统暂停时间过长,建议使用这个策略。它可以缩短系统内存回收时的被暂停时间。lGencon是一种将并发标记和传统的垃圾回收机制综合使用的策略,用于将内存回收时的暂停时间最小化。lSubpool不使用并发标记,但是,使用一种改进的内存分配算法用来获得更好的性能。后两种在电子商务应用中可提升30%~

6、60%的吞吐量。3.打开垃圾回收详细信息功能。可以在控制台中设置,设置后需要重新启动websphere才能生效。开启这个功能后会生成进程日志(vnative_stdout.log或者vnative_stderr.log)包含垃圾处理过程的信息。这项功能默认是不启用的。可以使用相应的工具分析这些文件来分析垃圾回收的情况。勾选这项重启,就可以了。垃圾回收分析工具PMAT(ga)支持多种JDK版本的分析。启动java-Duser.language=cn-Duser.country=CN-jarga29.jar不同的系统产生的日志采用不同参数,默认的是

7、IBM的。点击导入vnative_stderr.log文件。(used(after)就是GC完成后占用内存大小的变化曲线)AF(AllocationFailure)内存分配失败内存泄露(MemoryLeak)由于应用程序的非正常的申请越来越多的内存对象导致最终所有的内存空间被用完。内存碎片(MemoryFragmentation)即虽然所有的空闲的内存空间的总和大于所需申请的内存,但是,由于这些内存不是连续的(由于某些内存无法移动)而无法分配。内存碎片问题多数是由于固定对象和大对象问题引起的。分析方向:(两个图表两次分配失败的间隔时间(Time

8、sincelastAF)和GC完成时间(Completetime))Ø如果GC的频率很高(不论GC的完成时间是否正常),则很可能是真正的内存碎片问题。可以尝试调大JVM堆大小。ØGC的每次执行时间应该小于10S。如果大于这个值说明垃圾回收器要花很长一段时间去清理大空间堆里的对象。这一般说明JVM堆的最大值过大,应该调小。Ø“GC的周期和分布”可以用来分析GC的开销是否过大;“GC后的空闲内存空间”可以用来发现内存泄露;“GC前的空闲内存空间”和“引起AF请求的大小”可以发现碎片过多和大对象问题,等等。Ø碎片问题(AF发生前的总空闲内存大小和导致

9、AF的内存请求大小图表)正常情况下,AF发生前的总空闲内存大小应该比较小,或至少小于导致AF的内存请求大小。正常情况下,这个曲线应该贴近水平坐标轴,即AF发生前剩余空间应该接近零。反之,就很可能出现了内存碎片问题。Ø内存碎片问题解决(大部分是由于固定对象问题(pinnedobject)和大对象问题),固定对象问题可以通过设置“-Xk”和“-Xp”通用JVM参数来解决。在通用JVM参数中设置参数“-verbosegc–Dibm.dg.trc.print=st_verify”,重新启动websphere就可以在日志中看到相应的“pinned=nnn

10、n”等信息。序号参数含义单位1Since从上次AF到现在的时间millisecond2Freed这次GC释放的空间byte3Needed/Requested这次AF的请求空间byte4Free这次GC后总的空闲空间byte5TotalGC后的Java堆大小byte6Completed完成AF的时间millisecond7GCCompletedorGC完成GC消耗的时间millisecond8Overhead完成AF的时间%%9Mark标记状态消耗的时间millisecond10Sweep打扫状态消耗的时间millisecond11Compact

11、压缩耗时millisecond12Exhausted是否没有足够的空间分配使失败1.两种情况会导致java.lang.OutOfMemoryError

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。