У меня установлен Apache с рабочим mpm, в котором, похоже, слишком много активных процессов, несмотря на имеющиеся конфигурации. Подробно конфиги ниже:
StartServers 2
MinSpareThreads 10
MaxSpareThreads 25
ThreadsPerChild 25
MaxClients 150
Исходя из этих настроек, мы должны видеть максимум 1 процесс управления Apache (uid: root) и 6 клиентских процессов Apache (uid: www). Это связано с MaxClients / ThreadsPerChild.
Однако я вижу всего 1 процесс управления Apache и 9 клиентских процессов Apache.
в этом
- apache2 (корень)
- - apache2 (www)
- - apache2 (www) - 1 поток
- - apache2 (www) - 26 потоков
- - apache2 (www) - 26 потоков
в этом
- apache2 (www) - 2 потока
- apache2 (www)
- apache2 (www)
- apache2 (www)
Мы не берем в привычку перезапускать ни Apache, ни сервер, и время от времени будем выполнять перезагрузку 2-3 раза в день, чтобы добавить новые VHOST.
Сможет ли кто-нибудь объяснить мне, что могло быть причиной этого? enter code here
MaxClients не определяет количество дочерних процессов - количество дочерних процессов, умноженное на количество ThreadsPerChild, определяет максимально допустимое значение MaxClients.
Чтобы соответствовать вашим значениям 6 дочерних процессов и 150 максимальных клиентов, используйте следующие настройки:
StartServers 2
ServerLimit 6
MinSpareThreads 10
MaxSpareThreads 35
ThreadsPerChild 25
MaxClients 150
Также обратите внимание, что я изменил значение MaxSpareThreads. Из документация:
Диапазон значения MaxSpareThreads ограничен. Apache исправит данное значение автоматически в соответствии со следующими правилами:
* mpm_netware wants the value to be greater than MinSpareThreads. * For worker the value must be greater or equal than the sum of MinSpareThreads and ThreadsPerChild.