Назад | Перейти на главную страницу

apache prefork / mod_wsgi порождение процессов вне конфигурации

в производственной среде, где запущен nginx, возвращается к apache mpm-prefork / mod_wsgi, я вижу 90 Дочерние процессы apache, когда я ожидал бы, что максимум 40 будет, как указано ниже. конфигурация / настройка ничего интересного:

  1. nginx выполняет обратное проксирование в apache через proxy_pass, и обслуживание статических медиа
  2. apache обслуживает только динамические запросы

соответствующая конфигурация nginx:

worker_processes 15;

events {
    worker_connections  1024;
}

keepalive_timeout 10;

соответствующая конфигурация apache:

KeepAlive Off
MaxKeepAliveRequests 100 
KeepAliveTimeout 15

<IfModule mpm_prefork_module>
    StartServers        20
    MinSpareServers     7      
    MaxSpareServers     10
    MaxClients          200
    MaxRequestsPerChild 0
</IfModule>

mod_wsgi config, где webapp это имя процесса:

WSGIDaemonProcess webapp user=www group=users threads=1 processes=40

я что-то упускаю?

Я думаю, что Грэм Дамплтон мог недавно ответил на ваш вопрос в своем блоге.

редактировать

Думаю, я должен указать, что его сообщение в блоге в основном посвящено mod_python, но я думаю, что его объяснение того, как работает prefork, может дать вам некоторое представление о том, откуда берутся дополнительные процессы.