Настройка параметров php5-fpm (502 nginx)
При появлении проблем с хостингом (505 nginx) смотрим логи fpm – и если
ALERT: [pool www] pm.max_spare_servers(3) must not be less than pm.min_spare_servers(5)
и
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 17 total children
делаем следующие настройки php5-fpm в /etc/php5/fpm/pool.d/www.conf
pm.max_children = необходимо вычислить сколько памяти занимает один процесс, потом разделить тот объем памяти который вы хотите выделить для php5-fpm, на объем одного процессора, получите количество pm.max_children (наример 10000мб/50мб=200)
pm.min_spare_servers = этот параметр начать с количество ядер процессора умножить на 2 (пример 4 ядра * 2 = 8)
pm.max_spare_servers = этот параметр количество ядер процессора * 4 (пример 4 *4 = 16)
pm.start_servers = этот параметр вычисляется по формуле (pm.min_spare_servers+pm.max_spare_servers)/2 (пример (8+16)/2=12)
Итого на выходе получаем примерно конфигурацию для 4 ядерного процессора 10гб памяти (выделенные только под PHP5-FPM, возможно у вас 16Гб общей)
pm.max_children = 200
pm.start_servers = 12
pm.min_spare_servers = 8
pm.max_spare_servers = 16