Best way to increase heap size in catalina.bat file

Edward picture Edward · Sep 23, 2012 · Viewed 100.4k times · Source

I have tomcat 6 server on windows xp ,And I start tomcat through console i.e. using startup.bat.

AFAIK catalina.bat file is for windows so I am changing bat file for memory management.I don't have tomcat configuration window.

Now I want to increase its heap size so My question is should I extend the existing JAVA_OPTS in catalina.bat file i.e.

set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" -Xms1024m -Xmx1024m -XX:PermSize=256m  -XX:MaxPermSize=128m  

Or should I create new environment variable in catalina.bat file i.e.

set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSize=256m  -XX:MaxPermSize=128m 

And Is this the correct way to do it?

Please guide.

and I am able to see current heap size in Probe but not able to see existing perm size so What is the default value for perm size?

Edit:

following parameters help any?

-XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

Answer

RGO picture RGO · Sep 23, 2012

If you look in your installation's bin directory you will see catalina.sh or .bat scripts. If you look in these you will see that they run a setenv.sh or setenv.bat script respectively, if it exists, to set environment variables. The relevant environment variables are described in the comments at the top of catalina.sh/bat. To use them create, for example, a file $CATALINA_HOME/bin/setenv.sh with contents

export JAVA_OPTS="-server -Xmx512m"

For Windows you will need, in setenv.bat, something like

set JAVA_OPTS=-server -Xmx768m

Original answer here

After you run startup.bat, you can easily confirm the correct settings have been applied provided you have turned @echo on somewhere in your catatlina.bat file (a good place could be immediately after echo Using CLASSPATH: "%CLASSPATH%"):

enter image description here