一、tomcat

Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。有以下几种方法可以选用:
第一种方法:在配置文件中设置
Windows下,在文件/bin/catalina.bat,Unix下,在文件/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS=’-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】‘
需要把这个两个参数值调大。例如:
JAVA_OPTS=’-Xms256m -Xmx512m’

表示初始化内存为256MB,可以使用的最大内存为512MB。
第二种方法: 环境变量中设
变量名:JAVA_OPTS
变量值:-Xms512m -Xmx512m

第三种方法:前两种方法针对的是bin目录下有catalina.bat的情况(比如直接解压的Tomcat等),但是有些安装版的Tomcat下没有catalina.bat,这个时候可以采用如下方法,当然这个方法也是最通用的方法:
运行tomcatHome/bin/tomcat5w.exe,点击Java选项卡,然后将会发现其中有这么两项:Initial memory pool和Maximum memory pool.Initial memory pool这个就是初始化设置的内存的大小。Maximum memory pool这个是最大内存的大小 设置完了就按确定然后再重启TOMCAT你就会发现tomcat中jvm可用的内存改变了。

如果把tomcat作为系统服务启动,这时候上面设置CATALINA_OPTS 属性的方法就不适用了,因为作为系统服务的话,系统启动时调用的是 %tomcat_home%”bin”tomcat5.exe,他读取注册表中的值,而不是catalina.bat的设置,因此需要修改注册表:
解决办法
修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat5\Parameters\Java中的JvmMs和JvmMx。

或者用上面说的第三种方法。
重起tomcat服务,设置生效。

二、weblogic

方法一:
找到安装目录下的weblogic\common\bin\commEnv.cmd文件,打开修改如下代码

sun 
 if “%PRODUCTION_MODE%” == “true” goto sun_prod_mode 
 set JAVA_VM=-client 
 set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m 
 set JAVA_OPTIONS=%JAVA_OPTIONS% -Xverify:none 
 goto continue 
 :sun_prod_mode 
 set JAVA_VM=-server 
 set MEM_ARGS=-Xms768m -Xmx1024m -XX:MaxPermSize=256m 
 goto continue


一般在文件中,有二处这样的代码存在,一个是使用weblogic自带的jrockit JDK,二是使用sun的JDK.这里是以sun JDK为例
通过修过二处的=-Xms768m -Xmx1024m 可以达到修改JVM目的所在.修改后保存重启即可
如果做了以上设置以后还没有修改了,那就找到 bea\user_projects\domains\domain-name\bin目录下的setDomainEnv.cmd文件,修改以下代码:

Java代码


1. set WLS_HOME=%WL_HOME%\server
2. set MEM_ARGS=-Xms512m -Xmx1024m
3. set MEM_PERM_SIZE=-XX:PermSize=128m
4. set MEM_MAX_PERM_SIZE=-XX:MaxPermSize=256m
set WLS_HOME=%WL_HOME%\server
set MEM_ARGS=-Xms512m -Xmx1024m
set MEM_PERM_SIZE=-XX:PermSize=128m
set MEM_MAX_PERM_SIZE=-XX:MaxPermSize=256m

修改完成以后保存,重启weblogic服务即可。

方法二:
直接修改user_projects\domains\domain-name\bin下的startWebLogic.cmd文件
找到一下代码:

@REM JAVA_OPTIONS – Java command-line options for running the server. (These 
 @REM will be tagged on to the end of the JAVA_VM and 
 @REM MEM_ARGS)



在它下面添加一下代码

Java代码

    1. $ java -XX:NewSize=128m -XX:MaxNewSize=128m -XX:SurvivorRatio=8 -Xms512m -Xmx512m
    $ java -XX:NewSize=128m -XX:MaxNewSize=128m -XX:SurvivorRatio=8 -Xms512m -Xmx512m

    重启weblogic服务即可。

    注:在WebLogic中,为了获得更好的性能,BEA公司推荐最小Java堆等于最大Java堆。

    三、websphere

    选择服务器-> 应用程序服务器-> Server1-> 进程定义->Java 虚拟机。
    滚动到初始堆大小和最大堆大小字段并设置值。
    单击确定以保存更改

    四、jboss

    windows 版本:

    修改

    1G内存的配置 是其物理内存80%

    set JAVA_OPTS=” -Xms800m -Xmx800m -Xmn256m -Xss128k”

    linux 版本:

    修改

    1g 内存的配置 是其物理内存25%

    JAVA_OPTS=”-server -Xms256m -Xmx256m -Xmn80m -XX:PermSize=64m -XX:MaxPermSize=128m -Xss128k”

    五、resin

    resin3.0 及前期版本内存设置, 如下:

    unix> bin/httpd.sh -Xmn100M -Xms500M -Xmx500M 
     win> bin/httpd.exe -Xmn100M -Xms500M -Xmx500M 
     install win service> bin/httpd.exe -Xmn100M -Xms500M -Xmx500M -install -Xss1m.

    resin3.1, 则只需修改resin.conf,如下配置即可

    <jvm-arg>-Xmx2048m</jvm-arg> 
     <jvm-arg>-Xms1024m</jvm-arg> 
     <jvm-arg>-Xss1m</jvm-arg> 
     <jvm-arg>-Xdebug</jvm-arg> 
     <jvm-arg>-Dcom.sun.management.jmxremote</jvm-arg>

    注:

    在linux /unix 下或编辑 httpd.sh, 如下内容:

    args=’-J-server -Xms200m -Xmx1024m -Xloggc:./log/gc.log -XX:MaxNewSize=256m -XX:MaxPermSize=256m -Djava.awt.headless=true’

    说明
    (1)J-server -Xms200m -Xmx1024m 其中,-Xms200m 表示启动时,初时内存大小,-Xmx1024m
    最大内存占用大小。
    (2)-XX:MaxNewSize=256m -XX:MaxPermSize=256m 表示:内存的永久保存区域的大小
    (3)-Djava.awt.headless=true 解决在linux/unix验证码图片不能显示的问题。