记分牌已满,而不是MaxRequestWorkers

时间:2014-03-22 11:10:07

标签: apache tomcat httpd.conf mod-jk

我在项目中使用Apache和Tomcat以及mod-jk。我的Web应用程序位于Tomcat实例中。我正在使用Apache jmeter来测试tomcat上的http加载。但我收到错误记分板已满,而不是MaxRequestWorkers ,即使有1000个主题。

[mpm_event:error] [pid 24313:tid 3075319488] AH00485: scoreboard is full, not at MaxRequestWorkers

[mpm_event:error] [pid 24313:tid 3075319488] AH00484: server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting

我为大约5000个线程配置了http-mpm。

httd-mpm.conf文件是:

<IfModule mpm_event_module>
    ServerLimit              200
    StartServers             3
    MinSpareThreads          75
    MaxSpareThreads          250
    MaxClients               5000 
    ThreadsPerChild          25
    MaxRequestWorkers        5000
    MaxConnectionsPerChild   5000
</IfModule>

有人可以指导我这个配置中可能出现的问题吗?

3 个答案:

答案 0 :(得分:4)

似乎Apache试图优雅地完成某些进程并在执行此操作时挂起。这可能是Apache(https://bz.apache.org/bugzilla/show_bug.cgi?id=53555)的问题或应用程序本身的问题。

您可以通过查看apache的服务器状态页面轻松查看。为此,您需要启用status.conf apache模块。然后转到your-server.org/server-status。您将看到当前正在使用或正常完成的所有进程和线程(&#34; G&#34; -state)。如果你有许多不能消失的G,你就找到了问题所在。它看起来像这样:

Too many threads gracefully finishing...

解决方案非常简单。只需将MaxConnectionsPerChild设置为0或将其注释掉(mpm_event.conf)。这样做只是让进程继续工作而不重新启动它。在我们的案例中,这是一件好事,因为重新开始这个过程会让许多G的人填满记分板并最终导致Apache崩溃。

希望有所帮助。

答案 1 :(得分:0)

我有同样的问题。我尝试了不同的Apache版本和MPM。

我似乎得到了很多与MPM工作者。使用Apache 2.2.2

也不会再出现错误

您使用的是cPanel吗?如果是这样尝试/ upcp --force并将StartServers增加到更高的数量,如50,就像我所做的一样,以消除此错误。

答案 2 :(得分:0)

尝试启用EnableMMAP 在00_default_settings.conf中