打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
解决Tomcat应用的内存溢出问题 - Tomcat - Java - JavaEye论坛

维护一个老系统,发现有java.lang.OutOfMemoryError: Java heap space的情况,内存溢出,以下是大致的解决过程:

1.安装JProfiler,并配置成监控本地的tomcat

2.修改catalina.bat,添加参数: set JAVA_OPTS= -Xms768m -Xmx1024m -verbose:gc -Xloggc:../logs/gclog.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -XX:+PrintTenuringDistribution -XX:+HeapDumpOnOutOfMemoryError %JAVA_OPTS%

3.使用JProfiler在Tomcat的bin目录下创建的启动脚本startup_jprofiler.bat重启tomcat

4.运行JProfiler观察内存状况,未发现问题

5.第二天突然发现Tomcat再次出现内存溢出,Tomcat的bin目录下自动生成了java_pid107932.hprof文件,将此文件下载到本地,以便分析。

6.下载Memory Analyzer工具,然后打开该hprof文件进行分析,发现是SmartUpload的问题:com.jspsmart.upload.Files占用内存1G多。

7.用Apache的上传组件替换掉smartupload,目前没有发现问题

 

附上Memory Analyzer分析的图片:

 

Leak Suspects显示,有一个东西占了1007.9M的内存:

 

 

 点击底部的Details链接,发现是com.jspsmart.upload.Files占用内存最多:

 

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
FineReport性能问题处理方法总结
linux中tomcat内存溢出解决办法
Java几款性能分析工具的对比
tomcat6安装版,性能调优 三个方面(其实两个方面)
安装版的tomcat6.0?内存设置【tomcat6.0内存溢出】
myeclipse修改内存大小不足
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服