在 Jboss 6 上部署 Web 应用程序时 Permgen 不断增长

发布于 2024-12-24 22:56:44 字数 657 浏览 1 评论 0原文

我正在将 Jboss 4.2.3 上早期的 Web 应用程序移植到 Jboss 6 上。总共大约有 12 个 Web 应用程序,目前仅部署了 4 个。

这些 Web 应用程序基于 Axis2 1.5.5、spring 2.5、hibernate 3.2.5、OpenJPA 1.0、saxon 9.1。

类加载器隔离设置如下

<class-loading java2ClassLoadingCompliance="false">
        <loader-repository>
            webapp:loader=webapp.war
            <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
        </loader-repository>
</class-loading>

我看到 PermGen 已经达到 440MB 并且在 Jboss 6 上不断增长,并且我设置了 -XX:MaxPermSize=512m

任何人都可以为我提供识别问题的输入。

环境:JDK 1.6.0_26、Ubuntu 11.10

Am porting web applications which were earlier on Jboss 4.2.3 onto Jboss 6. There are about 12 web applications totally and out of which only 4 are deployed as of now.

These web applications are based on Axis2 1.5.5,spring 2.5,hibernate 3.2.5,OpenJPA 1.0, saxon 9.1.

The classloader isolation is set as follows

<class-loading java2ClassLoadingCompliance="false">
        <loader-repository>
            webapp:loader=webapp.war
            <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
        </loader-repository>
</class-loading>

I see that the PermGen has already reached 440MB and growing on Jboss 6 and I have set -XX:MaxPermSize=512m

Can anyone provide me inputs in identifying the problem here.

Environment: JDK 1.6.0_26, Ubuntu 11.10

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

高跟鞋的旋律 2024-12-31 22:56:44

我不知道为什么JBoss 6对perm gen内存方面的要求更高。
但是,当您禁用注释扫描(如果不使用它)时,启动时间可能会缩短。对我们的申请很有帮助。

The reason why JBoss 6 is more demanding on the perm gen memory side, i do not know.
But the startup time might be improved when you disable annotation scanning (if not using that). It helped for our application.

烂柯人 2024-12-31 22:56:44

我上周遇到了同样的问题。 JBoss-6 微容器尝试通过在启动时加载类路径中所有 JAR 中的类来扫描 Jboss 特定注释。这会导致 PermGen 膨胀,因为它开始加载所有不需要的类。

为了减少扫描量,微容器通过 jboss-scanning.xml 提供了另一个描述符挂钩。
将此“jboss-scanning.xml”添加到 WAR 内的 WEB-INF,并将“jboss-scanning.xml”添加到 EAR 内的 META-INF。

<scanning xmlns="urn:jboss:scanning:1.0">

    <!-- Purpose: Disable scanning for annotations in contained deployment. -->

</scanning>

I encountered the same problem last week. The JBoss-6 Microcontainer tries to scan for Jboss specific annotations by loading the classes from all the JARs in the class-path on startup. This causes the PermGen bloating as it starts to load all the unwanted classes.

To reduce the amount of scanning, the Microcontainer provides another descriptor hook, by means of jboss-scanning.xml.
Add this 'jboss-scanning.xml' to the WEB-INF inside WARs and ass 'jboss-scanning.xml' to the META-INF inside EARs.

<scanning xmlns="urn:jboss:scanning:1.0">

    <!-- Purpose: Disable scanning for annotations in contained deployment. -->

</scanning>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文