run*_*nts 8 performance performance-tuning apache-2.2
偶尔,在我的 Apache 错误日志中,我会发现:
[error] server reached MaxClients setting, consider raising the MaxClients setting
Run Code Online (Sandbox Code Playgroud)
由于内存不足的问题,我过去故意将 MaxClients 降低到 60,但我想确切地知道当服务器上达到此限制时用户端发生了什么。他们访问的页面加载时间是否更长?他们是否收到某种错误消息?
Læt*_*æti 13
首先,客户端请求将排队,直到有一个进程/线程在 apache 服务器上空闲。因此,客户端将看到加载页面的延迟。有关更多信息,请参阅MaxClients
参数文档。
当放置在积压队列中时,客户端请求最终会在客户端超时。然后用户将在其浏览器中看到一个错误页面,告知服务器响应时间过长。例如,Firefox 中的默认超时值为300 秒。或者用户会在超时之前取消请求......
然后,如果服务器收到更多请求而无法及时获得空闲进程/线程,则ListenBacklog
队列可能会被填满(默认为 511 个排队请求)并且任何后续请求都不会得到服务。然后浏览器会告诉用户它无法连接到网站,就像网站完全关闭一样。
在 TCP 实现中,此积压队列在操作系统级别进行管理。在 linux 下,listen
手册页将为您提供有关管理方式的更多信息。这是另一个关于 linux 和 BSD 系统中 TCP 积压队列的非常有见地的读物。
归档时间: |
|
查看次数: |
1732 次 |
最近记录: |