Resin服务器内存修改

编辑
  • 文档创建者:macro_hard
  • 浏览次数:4267次
  • 编辑次数:3次
  • 最近更新:Kevin-s 于 2019-06-17
  • 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 参数:

    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>


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


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


    附件列表


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

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

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