码迷,mamicode.com
首页 > 系统相关 > 详细

加入ehcache后,系统出现内存泄漏,解决办法

时间:2020-03-29 19:36:17      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:cache   被垃圾回收   web应用   class   listener   ring   div   应用   问题   

最近在系统中,加入缓存ehcache,但发现,每隔一天,服务器就会报出内存溢出。
问题严重,后来在网上查资料发现,一篇解释的网文:

spring中的提供了一个名为org.springframework.web.util.IntrospectorCleanupListener的监听器。它主要负责
处理由 JavaBeans  Introspector的使用而引起的缓冲泄露。spring中对它的描述如下:
 
它是一个在web应用关闭的时候,清除JavaBeans Introspector的监听器.在web.xml中注册这个listener.
可以保证在web 应用关闭的时候释放与掉这个web 应用相关的class loader 和由它管理的类
 
如果你使用了JavaBeans Introspector来分析应用中的类,Introspector 缓冲中会保留这些类的引用.
结果在你的应用关闭的时候,这些类以及web 应用相关的class loader没有被垃圾回收.

解决办法,就是在web.xml中加入:
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>

问题解决,再也没有报内存泄漏了。

加入ehcache后,系统出现内存泄漏,解决办法

标签:cache   被垃圾回收   web应用   class   listener   ring   div   应用   问题   

原文地址:https://www.cnblogs.com/liuys635/p/12594163.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!