读书人

Tomcat6起步参数设置分析

发布时间: 2012-09-27 11:11:17 作者: rapoo

Tomcat6启动参数设置分析

??? Tomcat 服务器是一个免费开源的小型的轻量级Web 应用服务器(Servlet/JSP容器),Tomcat?6 支持最新的Servlet 2.5 和JSP 2.1 规范,技术先进、性能稳定。

??? tomcat下载地址:http://tomcat.apache.org 一般window下载zip压缩文件或exe安装程序,linux下载tar.gz压缩文件

??? 这里JAVA_HOME,CLASSPATH,Path环境变量配置不再讲述,如果是解压版的解压,安装版的就next吧,完后设置CATALINA_HOME和Path。我比较喜欢解压版的自由度大,可以用startup.bat,shutdown.bat(linux下用startup.sh,shutdown.sh)启动关闭服务器也可以用service.bat注册成windows服务启动。

??? 首先来讲第一种用startup.bat启动吧,看下startup.bat

if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome:okHomeset EXECUTABLE=%CATALINA_HOME%\bin\catalina.batrem Check that target executable existsif exist "%EXECUTABLE%" goto okExec:okExecrem Get remaining unshifted command line arguments and save them in theset CMD_LINE_ARGS=:setArgsif ""%1""=="""" goto doneSetArgsset CMD_LINE_ARGS=%CMD_LINE_ARGS% %1shiftgoto setArgs:doneSetArgscall "%EXECUTABLE%" start %CMD_LINE_ARGS%

???? 如果在相应路径找到catalina.bat就把路径设置成EXECUTABLE变量,有传入参数就循环将参数放入CMD_LINE_ARGS变量,最后就调用catalina.bat并把CMD_LINE_ARGS也一起传入

??? 看下catalina.bat有这么一段注释里,说可以设置可选变量JAVA_OPTS来给jre配置参数

rem   JAVA_OPTS       (Optional) Java runtime options used when the "start",rem                   "stop", or "run" command is executed.

???? 比如可以set JAVA_OPTS=-Xms512m -Xmx512m来设置指定最大和最小的内存限制为512M

?? 还有另一种方式是通过service.bat注册成windows服务来启动,比如可以用命令service.bat install/remove tomcat6来注册和移除服务名tomcat6的服务

?? service.bat并没有用catalina.bat来做设置,下面的这段就是找到jvm并使用,这个jvm就是Java HotSpot VM下面网址有参数相关说明

http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

http://www.oracle.com/technetwork/java/javase/tech/exactoptions-jsp-141536.html

?

rem Set the server jvm from JAVA_HOMEset PR_JVM=%JAVA_HOME%\jre\bin\server\jvm.dllif exist "%PR_JVM%" goto foundJvmrem Set the client jvm from JAVA_HOMEset PR_JVM=%JAVA_HOME%\jre\bin\client\jvm.dllif exist "%PR_JVM%" goto foundJvmset PR_JVM=auto:foundJvmecho Using JVM:              %PR_JVM%"%EXECUTABLE%" //IS//%SERVICE_NAME% --StartClass org.apache.catalina.startup.Bootstrap --StopClass org.apache.catalina.startup.Bootstrap --StartParams start --StopParams stop

?? tomcat/bin/tomcat6 //IS//tomcat6 --安装tomcat6服务

?? 在:installed里有一段就是设置jvm参数的

rem Set extra parameters"%EXECUTABLE%" //US//%SERVICE_NAME% --JvmOptions "-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed" --StartMode jvm --StopMode jvm

???? tomcat/bin/tomcat6 //US//tomcat6 --更新tomcat6服务参数

???

比如设置指定最大和最小的内存限制为512M可以改成--JvmOptions "-Xms512M;-Xmx512M;-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed" --StartMode jvm --StopMode jvm

? 另外More extra parameters有段--JvmMs?128?--JvmMx?256要去掉,要不会覆盖前面的-Xms512M;-Xmx512M;设置

"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties" --JvmMs 128 --JvmMx 256

?

读书人网 >软件架构设计

热点推荐