我想更改 Tomcat 的内存配置。我知道它可以在
Start > Apache Tomcat > Configure Tomcat > Java Tab]
如下所示完成
并指定诸如
-Xms512m
-Xmx1024m
-XX:MaxPermSize=512m
-XX:MaxHeapFreeRatio=70
那里。
但是,如果我从可执行文件安装 Tomcat,则会创建此程序组。我通过简单地提取不创建程序组的 zip 来安装 Tomcat。所以现在我在哪里可以指定这些信息
我想更改 Tomcat 的内存配置。我知道它可以在
Start > Apache Tomcat > Configure Tomcat > Java Tab]
如下所示完成
并指定诸如
-Xms512m
-Xmx1024m
-XX:MaxPermSize=512m
-XX:MaxHeapFreeRatio=70
那里。
但是,如果我从可执行文件安装 Tomcat,则会创建此程序组。我通过简单地提取不创建程序组的 zip 来安装 Tomcat。所以现在我在哪里可以指定这些信息
关于使用服务版本时Tomcat的内存选项保存在哪里的问题,在我的机器上至少可以在Windows注册表中找到它们:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\Tomcat-6\Parameters\Java
初始内存和最大内存根据 JvmMs 和 JvmMx 值记录,而选项文本根据选项值记录。
我相信,我的地址的 Tomcat-6 部分是基于我给服务的标识符(即在服务管理器中,Tomcat 被命名为“Apache Tomcat 6.0 Tomcat-6”),你可能不需要去通过 Wow6432Node 取决于您使用的是 32 位还是 64 位 Tomcat。
我在这里假设他们没有对这些信息存储在比 Tomcat 6 更新的 Tomcat 版本中的位置进行任何重大更改。
Ohkay 在 Tomcat 内部挖掘时,我在它的一个txt 文件(第 3.4 点)和在线发现了一些信息:
除了CATALINA_HOME
(设置为apache-tomcat-x.x.x
目录,例如C:\Program Files\Apache Software Foundation\apache-tomcat-7.0.41
)和CATALINA_BASE
(可选,默认为CATALINA_HOME
)之外,所有环境变量都可以在setenv
脚本中指定。该脚本放置在
目录中CATALINA_BASE/bin
或CATALINA_HOME/bin
目录中,并命名为
setenv.bat
(在 Windows 上)或 setenv.sh(在 *nix 上)。该文件必须是可读的。
默认情况下,setenv
脚本文件不存在。如果脚本文件同时存在于CATALINA_BASE
和 中CATALINA_HOME
,CATALINA_BASE
则首选 in 。
例如,要配置JRE_HOME
和CATALINA_PID
变量,您可以创建以下脚本文件:
在 Windows 上,%CATALINA_BASE%\bin\setenv.bat
:
set "JRE_HOME=%ProgramFiles%\Java\jre6"
exit /b 0
在 *nix 上,$CATALINA_BASE/bin/setenv.sh:
JRE_HOME=/usr/java/latest
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
要为 Web 应用程序的内存分配设置 Java 选项,请将以下内容(根据应用程序的内存要求)添加到同一文件中
set JAVA_OPTS="-Xms256m -Xmx512m"
和变量无法在脚本中配置
CATALINA_HOME
,因为它们用于定位该文件。CATALINA_BASE
setenv
此处描述的所有环境变量和setenv
脚本仅在您使用标准脚本启动 Tomcat 时使用。例如,如果您在 Windows 上将 Tomcat 作为服务安装,则服务包装器会直接启动 Java,而不使用脚本文件。