Я установил Apache 2.2 из репозитория Debian (6.0 / Squeeze). По умолчанию Debian устанавливает модуль prefork и поставляется со следующей (по умолчанию) конфигурацией:
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
Глядя на табло на странице статуса, я вижу, что доступно 256 рабочих:
Current Time: Sunday, 05-Jun-2011 22:50:00 CEST
Restart Time: Saturday, 04-Jun-2011 05:49:50 CEST
Parent Server Generation: 3
Server uptime: 1 day 17 hours 9 seconds
Total accesses: 208737 - Total Traffic: 4.6 GB
CPU Usage: u1.08 s.18 cu0 cs0 - .000854% CPU load
1.41 requests/sec - 32.6 kB/second - 23.0 kB/request
1 requests currently being processed, 9 idle workers
.______W__.._...................................................
................................................................
................................................................
................................................................
Интересно, действительно ли это 256, поскольку список запросов колеблется от 0 до 149. Из-за ошибки (еще не обнаруженной) Apache останавливается со 150 активными серверами, что соответствует MaxClients
настройка. Интересно, вводит ли в заблуждение дисплей с 4 строками по 64 символа и должен ли отображать всего 150 символов.
Чтобы ответить на мой собственный вопрос, кажется, что табло основано на ServerLimit
вместо того MaxClients
. В документации Apache не совсем ясно указано значение по умолчанию для ServerLimit
в случае префорка, которого оказалось 256.
По умолчанию приходит apache2 (при условии, что вы использовали apt-get install apache2
) в Debian Squeeze (6.0), скомпилированный для модели Worker MPM.
если вам нужна или вам нужна предварительная модель MPM, apt-get install apache2-mpm-prefork
Блок конфигурации, на который вы ссылаетесь в своем вопросе, является условными опциями для модели MPM перед форком и не подразумевает, что используется MPM перед форком.
MPM Prefork, слишком много процессов apache2? это еще один вопрос ServerFault, связанный с аналогичными проблемами.
вы можете найти модель MPM с: apache2 -V
или httpd -V
в зависимости от вашего дистрибутива.