Есть выделенный продакшен сервер следующей конфигурации:
Intel® Core™ i7-920 Quadcore – 4 ядра, 48 GB DDR3 RAM, 2 x 2 TB 6 Gb/s SATA 7200 rpm/Enterprise
OS Debian 7
Гуглив много информации, настроил php-fpm как рекомендуют в сети, получилась так:
pm = dynamic
pm.max_children = 200
pm.start_servers = 12
pm.min_spare_servers = 8
pm.max_spare_servers = 16
Т.е. хочу выделить пока-что 10000 Mb для php, беря с запасом использование памяти на процесс в 50Mb: 10000/50 = 200 max_children. Другие параметры выбраны из простейших рекомендованных формул в инете: min_spare_servers = кол-во_ядер * 2, max_spare_servers = кол-во_ядер * 4, и start_servers = min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
Но один фиг в логах ошибки:
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 7 idle, and 29 total children
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 7 idle, and 28 total children
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 6 idle, and 55 total children
WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 7 idle, and 64 total children
Так как же правильно считать и выставлять эти параметры?