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

Какой параметр mpm использовать для ограничения количества подключений в Centos 7 apache

Я гуглил и обнаружил, что спускаюсь в кроличью нору и никуда не денусь.

Моя общая цель - ограничить количество одновременных подключений к Apache на сервере Centos 7.

По умолчанию:

[root@app1 ~]# cat /etc/httpd/conf.modules.d/00-mpm.conf
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
#LoadModule mpm_worker_module modules/mod_mpm_worker.so
#LoadModule mpm_event_module modules/mod_mpm_event.so

[root@app1 ~]# httpd -t -D DUMP_MODULES | grep mpm
 mpm_prefork_module (shared)

[root@app1 ~]# httpd -V | grep MPM
Server MPM:     prefork

Если я бегу:

[root@app1 ~]# ab -n 200 -c 100 http://afterratest.com/

Я вижу около 135 входящих подключений.

Если я установил следующий параметр в файле httpd.conf

KeepAlive Off
<IfModule prefork.c>
   StartServers        5
   MinSpareServers     5
   MaxSpareServers     100
   MaxClients          100
   MaxRequestsPerChild 3000
</IfModule>

Перезапустите Apache и выполните ту же команду. Я вижу 100 подключений.

Я надеюсь получить ответ на этот вопрос:

  1. В чем разница между mpm_prefork_module, mpm_worker_module и mpm_event_module

Я читал документы в Интернете, и они не имеют смысла.

  1. Что делают следующие настройки для каждого?

    StartServers 5

    MinSpareServers 5

    MaxSpareServers 100

    MaxClients 100

    MaxRequestsPerChild 3000

Объясни, как будто мне 5