历史版本4 :Resin服务器内存修改 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

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。