Resin服务器内存修改

编辑
  • 文档创建者:macro_hard
  • 浏览次数:4859次
  • 编辑次数:4次
  • 最近更新:Leo.Tsai 于 2019-11-13
  • 1. 描述

    Java Servlet 运行于 Web 服务器中,与 Web 服务器融为一体运行在同一个 Java 虚拟机(JVM)当中。Web 服务器加载类需要占用 JVM 内存中的持久代(Perm Generation),Java 应用程序执行报表获取的数据,运算的中间数据等都需要占用 JVM 内存中的堆(heap),当没有内存可用时,就会出现内存溢出错误:java.lang.OutOfMemoryError:PermGen space 或者 java.lang.OutOfMemoryError:Java heap space。

    2. 解决方案

    根据服务器实际内存容量以及具体是 Perm 溢出还是 heap 溢出,调整相应的 JVM 参数。如果是 heap 溢出,调整 -Xms 参数和 -Xmx 参数,建议二者配成相同数值。如果是 PermGen 内存溢出,调整 -XX:PermSize 参数和 -XX:MaxPermSize 参数,建议二者配成相同数值。

    Resin 4.x 版本与 3.x 版本的配置有所不同,下面分别予以说明:   

    2.1 Resin 3.x 内存调整

    打开 Resin 3.x 安装目录下\conf\resin.conf配置文件,在 <cluster> 标签下的 <server-default> 标签下使用 <jvm-arg> 标签配置 JVM 参数:

    222

    2.2 Resin 4.x 内存调整

    Resin 4.x 安装目录下\conf\下的配置文件分成了 resin.xml 和 resin.properties,两个文件都可以调整内存。如果两个文件都进行了调整,由于 resin.xml 文件里的 JVM 参数加载在后,会以 resin.xml 文件里的配置生效。

    方法一:修改 resin.xml 文件,在 <cluster id="app"> 标签内增加:

    <server-default>
            <jvm-arg>-Xms1024m</jvm-arg>
            <jvm-arg>-Xmx1024m</jvm-arg>
            <jvm-arg>-XX:PermSize=256m</jvm-arg>
            <jvm-arg>-XX:MaxPermSize=256m</jvm-arg>
     </server-default>

    222

    方法二:修改 resin.properties 文件,增加一行 jvm_args  : -Xms1024m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m

    222

    注:修改完成后,需要重启 Resin。

    附件列表


    主题: 性能优化
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]