【问题标题】:Best way to increase heap size in catalina.bat file在 catalina.bat 文件中增加堆大小的最佳方法
【发布时间】:2012-09-15 05:21:33
【问题描述】:

我在 windows xp 上有 tomcat 6 服务器,我通过控制台启动 tomcat,即使用 startup.bat。

AFAIK catalina.bat 文件适用于 Windows,因此我正在更改 bat 文件以进行内存管理。我没有 tomcat 配置窗口。

现在我想增加它的堆大小,所以我的问题是我应该扩展 catalina.bat 文件中现有的JAVA_OPTS,即

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  

或者我应该在 catalina.bat 文件中创建新的环境变量,即

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

这是正确的做法吗?

请指导。

我可以在 Probe 中看到当前堆大小,但看不到现有的 perm 大小,那么 perm 大小的默认值是多少?

编辑:

以下参数有帮助吗?

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

【问题讨论】:

    标签: tomcat memory memory-leaks tomcat6 heap-size


    【解决方案1】:

    如果您查看安装的 bin 目录,您将看到 catalina.sh 或 .bat 脚本。如果您查看这些,您将看到它们分别运行 setenv.sh 或 setenv.bat 脚本(如果存在)来设置环境变量。 catalina.sh/bat 顶部的 cmets 中描述了相关的环境变量。例如,要使用它们,请创建一个包含内容的文件 $CATALINA_HOME/bin/setenv.sh

    export JAVA_OPTS="-server -Xmx512m"
    

    对于 Windows,您需要在 setenv.bat 中类似

    set JAVA_OPTS=-server -Xmx768m
    

    原答案here

    运行startup.bat 后,如果您在catatlina.bat 文件中的某个位置打开了@echo,则可以轻松确认已应用正确的设置(一个好的位置可以紧跟在echo Using CLASSPATH: "%CLASSPATH%" 之后):

    【讨论】:

    • Tomcat 文档 (tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt) 的注释:“注意:不要使用 JAVA_OPTS 来指定内存限制。用于停止 Tomcat 的小进程不需要太多内存. 这些设置属于 CATALINA_OPTS。"
    【解决方案2】:

    为窗口增加tomcat的堆大小在apache-tomcat-7.0.42\bin中添加这个文件

    堆大小可以根据需求进行更改。

      set JAVA_OPTS=-Dfile.encoding=UTF-8 -Xms128m -Xmx1024m -XX:PermSize=64m -XX:MaxPermSize=256m
    

    【讨论】:

      猜你喜欢
      • 2020-10-07
      • 1970-01-01
      • 2011-01-02
      • 2013-01-01
      • 1970-01-01
      • 2021-09-28
      • 2023-03-13
      • 2012-06-17
      相关资源
      最近更新 更多