几天前,我们将应用程序从wls 10.3.5.0(Java6)迁移到wls 12.1.3.0.0(Java7)。我们有测试服务器,每天Bamboo代理都会部署几个应用程序,并对该服务器运行一些测试。问题是当我们升级到wls 12时,2-3天后就会出现内存不足错误异常:
Exception in thread "[ACTIVE] ExecuteThread: '166' for queue: 'weblogic.kernel.Default (self-tuning)'" java.lang.OutOfMemoryError: PermGen space
Exception in thread "[STUCK] ExecuteThread: '35' for queue: 'weblogic.kernel.Default (self-tuning)'" java.lang.OutOfMemoryError: PermGen space
在wls 10中,我们没有这个问题。在网络启动中,我设置了以下参数:
-Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=1024m -Xss1m
,但错误仍然发生。 最佳答案
1确认服务器确实正在使用512m的烫发空间。
2确保您明确取消部署,然后部署新版本的应用程序。如果需要,可以明确删除旧应用,甚至删除临时文件夹和暂存文件夹的内容。
当wls认为烫发空间需要所有旧的和新的类时,您将用完烫发空间。
关于java - 在weblogic 12中反复出现内存不足错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24796838/