У меня есть настройки nginx + php-fpm на моем сервере.
Конфигурация пула FPM выглядит следующим образом:
[www]
user = root
group = root
listen = /run/php-fpm.sock
listen.owner = root
listen.group = root
pm = ondemand
pm.max_children = 50
pm.process_idle_timeout = 10s
pm.max_requests = 500
pm.status_path = /server-status
catch_workers_output = yes
Мое первое ожидание, что нет ребенка php-fpm
процессы запускаются, если нет входящего запроса. К сожалению, когда я начинаю php-fpm
Я быстро вижу 2 процесса:
10 ? S 0:00 php-fpm: master process (/etc/php/7.1/fpm/php-fpm.conf)
37 ? S 0:00 php-fpm: pool www
Итак, по какой-то причине один процесс предварительно разветвлен.
Мое второе ожидание — все процессы на холостом ходу более 10 секунд будут убиты. Я запускаю тест, который приводит к созданию 13 процессов. Примерно через 1 минуту (больше запросов не выполняется) около 5 процессов бездействуют. Почему это так?
Задача ещё не решена.
Других решений пока нет …