邓华

BlogJava 联系 聚合 管理
  48 Posts :: 0 Stories :: 149 Comments :: 0 Trackbacks
大家都知道,JAVA程序启动时都会JVM都会分配一个初始内存和最大内存给这个应用程序。这个初始内存和最大内存在一定程度都会影响程序的性能。比如说在应用程序用到最大内存的时候,JVM是要先去做垃圾回收的动作,释放被占用的一些内存。
        所以想调整Tomcat的启动时初始内存和最大内存就需要向JVM声明,一般的JAVA程序在运行都可以通过中-Xms -Xmx来调整应用程序的初始内存和最大内存: 
        如:java -Xms64m  -Xmx128m  a.jar.
tomcat的启动程序是包装过的,不能直接使用java -X..... tomcat.*来改变内存的设置。在Tomcat在改变这个设置
有两种方法:
1.    就需要在环境变量中加上TOMCAT_OPTS, CATALINA_OPTS两个属性,
        如 SET  CATALINA_OPTS= -Xms64m -Xmx512m;
        ms是最小的,mx是最大,64m, 512m分别是指内存的容量.

2.    修改Catalina.bat文件
       在166行“rem Execute Java with the applicable properties ”以下每行
%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% 中的%CATALINA_OPTS% 替换成-Xms64m -Xmx512m

其上为方法一
--------------------------------------------------------------------------------------------------------------

另外一个方法是
在 tomcat_home/bin/catalina.sh 这个文件里
找到下面:
# ----- Execute The Requested Command -----------------------------------------
echo "Using CATALINA_BASE:   $CATALINA_BASE"
echo "Using CATALINA_HOME:   $CATALINA_HOME"
echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR"
echo "Using JAVA_HOME:       $JAVA_HOME"

然后增加一行..
# ----- Execute The Requested Command -----------------------------------------
JAVA_OPTS="-server -Xmx512m -Xms128m -Djava.awt.headless=true "
echo "Using CATALINA_BASE:   $CATALINA_BASE"
echo "Using CATALINA_HOME:   $CATALINA_HOME"
echo "Using CATALINA_TMPDIR: $CATALINA_TMPDIR"
echo "Using JAVA_HOME:       $JAVA_HOME"

就OK了.
posted on 2006-03-16 11:56 邓华的碎碎念 阅读(127) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: