PHP-FPM на Linux, SCHED_BATCH или SCHED_OTHER?

У меня есть веб-сервер Linux (Ubuntu 12.04, ядро 3.2.0) рабочий Magento со множеством дочерних процессов PHP-FPM.

Так как Magento является тяжелой платформой, я часто вижу несколько дочерних процессов для увеличиваний в % ЦП (когда просматривается с помощью htop) в течение нескольких секунд перед выпадением из вершины N.

Я читал о Linux планировщики ЦП, и что я получил, был то, что SCHED_BATCH, кажется, дает более длинные интервалы процессам, чем SCHED_OTHER по умолчанию.

Это было бы выгодно, если я изменяю планировщики для всех процессов PHP-FPM к SCHED_BATCH? Или я неправильно понимаю планировщики?

0
задан 2 July 2015 в 19:14
1 ответ

После изучения немного о SCHED_BATCH, я бы даже не стал пытаться сравнить его с эталоном:

SCHED_BATCH также срабатывает намного дольше, пакетно. timeslices - по умолчанию SCHED_BATCH timeslice равен 1.5 секундам.

SCHED_BATCH был четко спроектирован для очень длительных (часов или даже дней) вычислительно-емких рабочих мест. Ваши задания интенсивно вычисляются только в течение секунд или долей секунд.

Это в значительной степени делает его неработоспособным для веб-сервера. И было бы хуже, если бы база данных была на той же машине, так как они могли бы претендовать на один из этих сверхдлинных временных отрезков

.
1
ответ дан 4 December 2019 в 16:53

Теги

Похожие вопросы