【问题标题】:Apache low idle workers but not at max requestsApache 低空闲工作人员,但没有达到最大请求
【发布时间】:2019-12-05 00:10:27
【问题描述】:

我有 apache 的默认最大工作人员,连接重用禁用了非常低的内存和 CPU 利用率和负载,低 IO 延迟,但我的空闲工作人员似乎非常低。有时接近或处于 0 并且根本不是很稳定,它会高高低一吨。我提供了一个元素很少的基本 php 登录页面。

在我看来,数学应该是

idle workers=256-(requests currently being processed)

但事实并非如此。 Apache记分牌显示(如果我在正确的时间抓住它):

121 requests currently being processed, 10 idle workers

CRCCCCCCCCCCCCCCCCCCCCRCCCRCCCRCCCCRCWCWCCCCCCCCCCCRCCRCCCCRRCRC
CCCCCCCRCCCCCCRCCCCCCCCCCCCCCWR_CCCC_CCCCCCCRCCCRCCCCCCCCC.CCC..
RCCC.C.C.....R.................C.......C........................
C........C...C..........CR....C.C.....R...........C....C.R..C.R.

在我看来,“。”表示空闲的工作人员。我错过了什么?我想确保没有 0 个空闲工人的微爆影响我的服务。

【问题讨论】:

  • 您可能会在ServerFault(或其他网络站点之一)上得到更好的回应,因为这似乎不是一个编码/编程问题。
  • 是的,我也这么认为,但绝大多数 apache 问题都是在 SO 上提出和回答的。
  • 查看apache 标签,我在过去 24 小时内看到一个已回答的问题。所以我不确定我是否同意这一点。但这只是一个建议。如果您的经历与此相反,我们非常欢迎您将其留在这里。

标签: php apache centos


【解决方案1】:

https://www.liquidweb.com/kb/apache-performance-tuning-mpm-directives/#prefork

MinSpareServers

该指令定义了 Apache 的最小备用子节点数 父进程可以保存在它的内存中。额外的服务器是 准备好响应新传入的预分叉空闲 Apache 子节点 要求。让空闲的孩子等待新的请求是必不可少的 提供最快的服务器响应时间。当总空闲 服务器上的孩子低于这个值,一个新的孩子被预分叉 以每秒一个的速度,直到满足该指令。这 “每秒一个”规则已到位,以防止创作激增 使服务器超载的进程,但是,此故障保护发生在 成本。每秒一个的生成速度特别慢 处理页面请求。因此,确保 有足够多的子节点预分叉并准备好处理传入的请求。

【讨论】:

    猜你喜欢
    • 2019-10-16
    • 2021-08-17
    • 1970-01-01
    • 2020-02-03
    • 1970-01-01
    • 1970-01-01
    • 2020-09-20
    • 2021-02-15
    • 1970-01-01
    相关资源
    最近更新 更多