首页 > 其他 > 详细

tomcat-reload-与内存泄露

时间:2015-11-21 17:05:41      阅读:306      评论:0      收藏:0      [点我收藏+]

使用的是tomcat8 ,项目 PermSize 是64mb 而项目lib 大小是33m 

项目中  reloadable="true",

如果更新了class 文件,但是没有重启tomcat 那么使用一段时间后会出现Perm Space Error 的内存泄露。

可能引起的原因是

1.mysql JDBC

2.ThreadLocal 变量

3.日志框架

4.WebAppClassLoader  

 

使用jmap 导出内存快照用eclipse memory analyser 分析发现是 jdbc 和 webappclassloader 暂用了最多的类,而且存在两个 webappclassloader 对象。

 

暂时解决方法是:不再使用reload,同时加大PermSize 大小

 

tomcat-reload-与内存泄露

原文:http://www.cnblogs.com/predisw/p/4984078.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!