【问题标题】:Setting heap size in Tomcat在 Tomcat 中设置堆大小
【发布时间】:2011-08-16 21:01:43
【问题描述】:

我正在 unix 环境中的 apache tomcat 服务器上工作。我想增加我的应用程序的堆大小,所以我将它设置在 catalina.sh 文件中。我就是这样做的……

导出 CATALINA_OPTS="-Xms1024m -Xmx1024m" 回声 $CATALINA_OPTS

当我调用 startup.sh 时,它调用 catalina.sh 并将变量 CATALINA_OPTS 设置为 1024,如脚本中的 echo 语句所示。但是,如果我在命令提示符处 echo $CATALINA_OPTS 它会给出空白。这是预期的行为。我怎样才能确定确实已经拾取了正确的堆值?

【问题讨论】:

    标签: java tomcat heap-memory


    【解决方案1】:

    是的,$CATALINA_OPTS 在 shell 执行的脚本之外将不可用。为了获得正确的堆大小,您需要一个分析器,或者使用jmap 来获取堆信息 - 这里 39196 是我机器上的 tomcat 进程的 PID。

    mpandit-mbp:~ mpandit$ jmap -heap 39196
    Attaching to process ID 39196, please wait...
    Debugger attached successfully.
    Server compiler detected.
    JVM version is 19.1-b02-334
    
    using parallel threads in the new generation.
    using thread-local object allocation.
    Concurrent Mark-Sweep GC
    
    Heap Configuration:
       MinHeapFreeRatio = 40
       MaxHeapFreeRatio = 70
       MaxHeapSize      = 132120576 (126.0MB)
       NewSize          = 21757952 (20.75MB)
       MaxNewSize       = 87228416 (83.1875MB)
       OldSize          = 65404928 (62.375MB)
       NewRatio         = 7
       SurvivorRatio    = 8
       PermSize         = 21757952 (20.75MB)
       MaxPermSize      = 85983232 (82.0MB)
    

    【讨论】:

      【解决方案2】:

      $ ps aux | grep tomcat 命令应该显示由 tomcat 选择的实际设置。

      【讨论】:

        猜你喜欢
        • 2019-02-17
        • 2012-08-07
        • 2018-08-18
        • 2014-10-24
        • 2018-04-14
        • 2014-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多