首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tomcat6内存分配与Apache2

问Tomcat6内存分配与Apache2
EN

Stack Overflow用户
提问于 2015-05-25 10:33:00
回答 1查看 73关注 0票数 1

我曾与Tomcat6和Apache2合作过。

在Ubuntu实例中,我使用8GB内存运行Apache2,因此决定采用以下apache2.conf配置。

代码语言:javascript
复制
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          550
    ServerLimit         550
    MaxRequestsPerChild  0
</IfModule>

上面的配置是使用以下参数和这篇博客文章(如何配置apache )完成的。

代码语言:javascript
复制
Apache Memory Usage (MB): 611.719
Average Proccess Size (MB): 8.26647

在另一个例子中,我有一个运行8GB内存的Tomcat6。在Tomcat6 server.xml中,使用以下配置。

代码语言:javascript
复制
<Connector port="8009" protocol="AJP/1.3" redirectPort="8080" maxThreads="500"/>

我的问题是,

  • 在maxThreads中计算/决定Tomcat6参数的过程/步骤是什么?
  • 应该如何进行内存分配?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-25 10:42:01

Tomcat6是一个Java应用程序,因此内存分配由JVM完成。我假设您愿意通过apache代理tomcat,如果是这样的话,通常情况下,一个apache客户机最终将成为1个apache线程,因此在tomcat中使用比apache中的MaxClients指令少的线程是可取的。这就是说,计算maxThreads参数可能很困难,取决于您的应用程序,每个线程可能会有不同的内存使用量,有一个平均值可能是有用的,但是您还必须考虑到其他JVM内存空间,eden,permgen,……

查看JVM内存设置,每个线程堆栈设置,...I认为这是您可能要寻找的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30436305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档