问候语,
我们最近在其中一个应用上面临内存泄漏问题。
开发环境:Lucene2.4.0,hibernate search3.2.0,hibernate 3.5.0,spring2.5和ehcache 1.4.1
问题在于旧的记忆在一段时间内逐渐上升。最终,JVM耗尽内存,正如我们从jvm统计数据中看到的那样,老一代容量达到了最大值。因此,我必须重新启动web才能释放所有内存。
我从app生成了一个堆转储,并使用内存分析器进行检查。我明白这一点:
123,726 instances of "org.apache.lucene.index.TermInfosReader$ThreadResources", loaded by "org.apache.catalina.loader.WebappClassLoader @ 0x7f5d71ffe3c8" occupy 3,139,449,272 (79.54%) bytes. These instances are referenced from one instance of "java.util.concurrent.ConcurrentHashMap$Segment[]", loaded by "<system class loader>"
你可以给我一些建议吗?
感谢