понять настройку pm.max_children - PullRequest
0 голосов
/ 09 ноября 2018

Я провел несколько исследований и нашел, что это вычисляет и корректирует pm.max_children значение

https://myshell.co.uk/blog/2012/07/adjusting-child-processes-for-php-fpm-nginx/

но например:

  • У меня 8Gb на моем сервере
  • У меня хостинг 30 сайтов
  • php-fpm средний размер процесса около 40 МБ
  • php-fpm максимальный размер процесса около 80 МБ
  • Я хочу выделить максимум 5 ГБ памяти для процессов php-fpm

Если я применю это:

pm.max_children = Общий объем ОЗУ, выделенный для веб-сервера / Максимальный размер дочернего процесса

Так что в моем случае:

pm.max_children = 5120/80 = 64

Но если я добавлю pm.max_children = 64 в каждый файл конфигурации сайта php-fpm, это означает, что каждый сайт может использовать 64 дочерних процесса X размером 1 процесс (ex 40mb) = 2560Mb

И если мы представим, что в то же время все 30 веб-сайтов достигли значения pm.max_children, у нас будет: 2560Mb (макс. На веб-сайт) x 30 веб-сайтов = 76 800 Мб

Я прав?

Да, это означает, что когда многие веб-сайты размещены на одном сервере, мы должны разделить результат вычисления pm.max_children = 5120/80 = 64 на количество размещенных веб-сайтов (здесь 30).

То есть 64/30 = 2,1 и pm.max_children = 2 за веб-сайт

Это правильно или нет?

Спасибо

...