apache mpm_worker 服务器未能响应

apache mpm_worker 服务器未能响应

我正在尝试将我们当前的 Apache 2.4.9 配置从使用 prefork 更新为使用 worker mpm。我正在使用 jmeter 进行一些简单的负载测试,以比较两者之间的性能。我的第一个测试非常简单,只需使用 10、200、300、600、1000、1600 个并发 jmeter 线程/vuser 获取单个 gif 图像,并加载服务器一段时间以查看平均吞吐量和响应时间以及对 CPU、内存等的影响。正如预期的那样,worker 似乎比 prefork 表现更好,但是无论 jmeter 线程/vuser 的数量如何,.25-.5% 的请求都有错误。Jmeter 报告它收到:“目标服务器无法响应”。我没有在 http_error.log 中看到错误。系统和 apache 状态页面报告有足够的 CPU 和内存可用。使用 prefork 运行相同的测试时没有出现任何错误。我的 worker 配置如下:

ServerLimit 32
StartServers 8
MaxRequestWorkers 1600
MinSpareThreads 100
MaxSpareThreads 150
ThreadsPerChild 50
MaxConnectionsPerChild 1000
ThreadLimit 100

我尝试了增加和减少 ServerLimit、ThreadsPerChild 等各种组合,但使用 worker mpm 时仍然会出现少量错误。我需要调整其他模块指令吗?这是使用 worker 的权衡之一吗?我可以启用其他日志记录吗?

答案1

请参阅以下资源:

  1. 自 JMeter 2.10 以来连接重置?- Apache JMeter Wiki 页面的解释和解决方法
  2. Apache JMeter 属性自定义指南- 以更灵活的方式来解决该行为。

相关内容