我们在 JBoss EAP 7 中遇到了元空间泄漏问题,每次热部署后都会发生这种泄漏。
经过一番搜索,我发现了这个: https ://blog.voina.org/docker-jboss-dies-with-java-lang-outofmemoryerror-metaspace-after-several-redeploys/
它实际上可能与保存一些类引用的 EHCache 有关,这会阻止 JBoss 类加载器从元空间中删除旧类。
在本文中,建议使用 EHCache 库中包含的侦听器:
net.sf.ehcache.constructs.web.ShutdownListener
不幸的是,我们使用的是 EHCache 3.2.0,并且在那个版本中没有这样的监听器,有没有其他监听器的替代品?或者任何与我可以在“contextDestroyed”方法中调用的完全相同的方法?