Настройка php pm на сервереPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Настройка php pm на сервере

Сообщение Anonymous »

Я не php-разработчик и не знаю, как настроить сервер, но у меня возникла такая проблема. В статистике оперативной памяти и процессора на моем сервере отображаются некоторые слайды (ЦП https://disk.yandex.ru/i/BvtYfNCUGmAb1A и ОЗУ https://disk.yandex.ru/i/WgSEYqJKU0gZFg).
На сервере 4 запущенных приложения, 2 php и 2 js, у него 8 ядер и 16 ГБ ОЗУ.
В логах php такие строки:
WARNING: [pool web] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 8 children, there are 10 idle, and 31 total children
WARNING: [pool web] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 53 total children
WARNING: [pool web] server reached pm.max_children setting (64), consider raising it

Иногда бывают такие
NOTICE: Terminating ...
NOTICE: exiting, bye-bye!
NOTICE: fpm is running, pid 4182079
NOTICE: ready to handle connections
NOTICE: systemd monitor interval set to 10000ms

ps -ylC php-fpm --sort:rss
S UID PID PPID C PRI NI RSS SZ WCHAN TTY TIME CMD
S 0 1623 1532 0 80 0 22332 20315 ep_pol ? 00:00:02 php-fpm
S 33 224785 1623 0 80 0 32404 24662 inet_c ? 00:00:03 php-fpm
S 33 2094 1623 0 80 0 33164 25185 inet_c ? 00:00:03 php-fpm
S 33 2093 1623 0 80 0 34428 25171 inet_c ? 00:00:04 php-fpm

free -hl
total used free shared buff/cache available
Mem: 15Gi 7.1Gi 2.2Gi 83Mi 6.5Gi 8.3Gi
Low: 15Gi 13Gi 2.2Gi
High: 0B 0B 0B
Swap: 4.0Gi 8.0Mi 4.0Gi

Текущий вечер
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

Возможно, эту проблему можно решить настройкой pm max_children, start_servers, min_spare_servers, max_spare_servers, но боюсь усугубить ситуацию.
Если Я делаю такие настройки:
pm.max_children = 6
pm.start_servers = number of processor cores х 4
pm.min_spare_servers = number of processor cores х 2
pm.max_spare_servers = number of processor cores х 4

Могу ли я все сломать?
Что будет, если поставить больше pm?
Может ли быть так, что php-приложение внутренне вызывает само себя и из-за этого переполняет pm, а потом сбрасывается, когда достигает 64?
UPD:
Текущий pm2:
pm.max_children = 64
pm.start_servers = 24
pm.min_spare_servers = 16
pm.max_spare_servers = 24
pm.process_idle_timeout = 10s;
pm.max_requests = 2500


Подробнее здесь: https://stackoverflow.com/questions/790 ... the-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»