为什么 httpd 进程在日志记录状态下花费的时间越来越多?

为什么 httpd 进程在日志记录状态下花费的时间越来越多?

我正在运行 Apache 2.2 Web 服务器。

在压力测试时,我注意到我无法将负载增加到超过一定数量的同时连接。奇怪的是,我似乎没有达到 CPU 或内存的限制,而且我几乎看不到页面服务时间有任何增加。

然而,我注意到越来越多的 httpd 进程处于 mod_status 所称的“日志记录”状态:

按状态划分的并发 httpd 进程

MaxClients 是 500,但正如您所见,随着越来越多的进程花费时间进行记录,可用于处理连接的实际进程数会减少。

怎么会这样?

我的第一个猜测是磁盘 IO 瓶颈,但有几件事与此相反:

  1. 尽管其他地方应该有更多的磁盘 IO,但应用程序的其他部分没有瓶颈。
  2. 每个进程在请求结束时只应向访问日志写入一行。如果此处存在瓶颈,则按当今标准,磁盘写入速度会异常缓慢。

我该怎么做才能进一步调查此事?

谢谢,雅各布

相关内容