我最近发现了以下事实:
当我第一次浏览我的应用程序页面时,perm gem正在显著地成长。(这很正常)
当我在我已经导航过的应用程序页面中导航时,我的烫发已经长大了。但是,只有当我停止使用应用程序几分钟后,才会发生这种情况。如果我不这样做,那么perm gen保持不变,尽管我一直在导航。增长不是很大,但我认为这不是正常的行为。
我还注意到烫发从来不会下降或者稍微下降一点。
造成这种情况的原因是什么?
我使用的是Java6、Tomcat6、Hibernate、Spring3.3.4和JSF1.2。
发布于 2015-03-03 22:15:55
PermGen错误和泄漏很难调查。
要处理他们,他们,你可以做的第一件事就是检查你的静态。您的应用程序可以管理一些静态对象,这些静态对象持有对本应被垃圾回收的对象的引用,但仍然标记为可访问,因为这些静态对象引用了这些静态对象。
例如,您正在使用Spring,而在Spring中,bean默认是单例的,因此它可能是PermGen问题的根源。
要更多地了解内存中的对象,可以使用一些分析工具,比如VisualVM。它可以帮助您调查有多少个给定类的实例包含Tomcat,并且可以为您提供有关泄漏位置的线索。
要了解有关PermGen和PermGen错误和问题的更多信息,可以查看The java.lang.OutOfMemoryError: PermGen Space error demystified
https://stackoverflow.com/questions/28831150
复制相似问题