gpt4 book ai didi

java - Tomcat 中的多个 Web 应用程序(使用相同的 jars)导致 perm gen OOM

转载 作者:行者123 更新时间:2023-11-28 23:33:49 25 4
gpt4 key购买 nike

我正在运行带有两个 Web 应用程序实例的 Tomcat,这两个应用程序的开发是独立的。当我启动 tomcat 服务器并开始访问应用程序时,它会抛出 Perm Gen OOM 异常或堆空间 OOM 异常。这两个应用程序都使用相同的 jar,这些 jar 捆绑在 web 应用程序各自的 lib 文件夹中。 perm gen是因为类的重复加载导致的吗?如何避免 Perm Gen 和 Heap 空间异常?

编辑:我希望在这种情况下遵循最佳实践。请就此提出建议。

注意:我在具有 12 GB 内存的 2008 服务器上运行 tomcat。该服务器还托管其他 tomcat 服务器和数据库的 MSSQL 服务器。

最佳答案

此类错误肯定是由类加载器内存泄漏(https://wiki.apache.org/tomcat/MemoryLeakProtection)引起的内存泄漏引起的。

您可以尝试增加 permgen 空间 ( -XX:PermSize<size> -XX:MaxPermSize<size> ) 看看是否有帮助。如果它只是降低了 OOM 的频率,那么您很可能会发生内存泄漏。不幸的是,找到解决方案并不容易。我通过在重新部署应用程序时重新启动 tomcat 来避免这种情况,这种策略可能适合您也可能不适合您。

关于java - Tomcat 中的多个 Web 应用程序(使用相同的 jars)导致 perm gen OOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27059781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com