2

我想更改 Tomcat 的内存配置。我知道它可以在 Start > Apache Tomcat > Configure Tomcat > Java Tab]如下所示完成

这里

并指定诸如

-Xms512m
-Xmx1024m
-XX:MaxPermSize=512m
-XX:MaxHeapFreeRatio=70 

那里。

但是,如果我从可执行文件安装 Tomcat,则会创建此程序组。我通过简单地提取不创建程序组的 zip 来安装 Tomcat。所以现在我在哪里可以指定这些信息

4

2 回答 2

7

关于使用服务版本时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 版本中的位置进行任何重大更改。

于 2015-06-16T06:42:40.833 回答
4

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/binCATALINA_HOME/bin目录中,并命名为 setenv.bat(在 Windows 上)或 setenv.sh(在 *nix 上)。该文件必须是可读的。

默认情况下,setenv脚本文件不存在。如果脚本文件同时存在于CATALINA_BASE和 中CATALINA_HOMECATALINA_BASE则首选 in 。

例如,要配置JRE_HOMECATALINA_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_BASEsetenv

此处描述的所有环境变量和setenv脚本仅在您使用标准脚本启动 Tomcat 时使用。例如,如果您在 Windows 上将 Tomcat 作为服务安装,则服务包装器会直接启动 Java,而不使用脚本文件。

于 2013-06-18T10:39:47.643 回答