Ошибка server reached pm.max_children setting (5), consider raising it

  • Автор:
  • Опубликовано:
  • Изменено:
  • Просмотры: 106
  • Комментарии: 0
  • Рейтинг: 73,33%
  • Голосов: 3

При резком скачке посещаемости сайта, может сложиться такая ситуация, что вебсервер в связке с php не смогут обслуживать такое большое число число клиентов, в результате в логах php могут появляться ошибки такого вида:

WARNING: [pool www] server reached pm.max_children setting (5), consider raising it

В результате страницы сайта будут выдавать ошибку 503. Чтобы это исправить, необходимо внести небольшие изменения в настройки php. В примере ниже, будет использоваться php7.0-fpm

Необходимо открыть для редактирования файл /etc/php/7.0/fpm/pool.d/www.conf
Найти в нем параметр pm.max_children и изменить значение на большее.

pm.max_children = 10

В зависимости от настройки параметра pm.max_spare_servers в том же файле конфигурации, сервер сможет обслуживать одновременно максимум pm.max_spare_servers*pm.max_children. Т.е. при условии, что pm.max_spare_servers = 4, одновременно будут работать 4*10=40 параллельных процессов php.

В том случае, если даже после увеличения параметра pm.max_children, будет продолжать вылазить такая ошибка, то необходимо будет подробнее разбираться с ее причинами. Например, это может быть из-за того, что какой то скрипт на сайте очень долго выполняется (секунды) и из-за этого накапливается большое количество незавершенных процессов, которые превышают установленный лимит (40 в нашем примере). Либо на сайт осуществляется целенаправленная DDoS атака.

Оценить статью

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 3,67 из 5)

Добавить комментарий

Ваш e-mail не будет опубликован.