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

ВНИМАНИЕ: пул www кажется занятым (вам может потребоваться увеличить pm.start_servers или pm.min / max_spare_servers)

Я пытаюсь решить эту проблему на VPS Debian на базе 8 ГБ ОЗУ - 2 ядра

Я использую nginx и php7-fpm

проверка /var/log/php7.0-fpm.log у меня большое количество этих строк

WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 16 children, there are 0 idle, and 7 total children

это мой /etc/php/7.0/fpm/pool.d/www.conf

pm = dynamic
pm.max_children = 10
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
;pm.process_idle_timeout = 10s;
pm.max_requests = 200

Кто-нибудь может помочь мне решить эту проблему?


Я увеличил значения до

pm.max_children = 100
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pm.max_requests = 500

В журнале ошибок я продолжаю получать

[06-Oct-2016 16:35:08] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 4 idle, and 17 total children

Ошибка возникает, когда поступает запрос и PHP-FPM необходимо запустить новый дочерний процесс для обслуживания запроса вместо использования существующего.

Это происходит из-за того, что в конфигурации вашего пула заданы очень маленькие числа.

Цифры означают, что вы разрешаете одновременный запуск не более 10 процессов PHP. Вы начинаете с 2 дочерними элементами и имеете только один сервер minumum, готовый обслуживать запросы в любой момент. Если на вашем веб-сайте есть какое-то время простоя, то PHP-FPM закрывает неактивные процессы, так что максимум три процесса находятся в режиме онлайн и готовы обслуживать запросы.

Я бы умножил pm.max_children, pm.start_servers, pm.min_spare_serversandps.max_spare_servers`, каждый по 5, что было бы подходящим начальным номером.

Затем вы можете просто отслеживать свой трафик и проверять, появляются ли эти ошибки снова, а затем соответствующим образом корректировать числа.