Назад | Перейти на главную страницу

Негативные эффекты слишком высокой установки рабочих nginx

Я видел множество сообщений о том, как установить nginx worker_processes, но очень мало подробностей о том, что происходит, когда он установлен слишком высоко. Я собираюсь провести несколько тестов, но я был бы признателен за совет относительно того, чего мне следует ожидать. Если у меня есть одно ядро ​​(два аппаратных потока), доступное для nginx, какие метрики пострадают, если я изменю worker_processes от 2 до 24?

В общем, я ожидал, что конкуренция за ЦП приведет к снижению пропускной способности и увеличению задержек. Это верно? Ожидается ли, что какие-то другие показатели заметно пострадают - что еще я должен тестировать?

В worker_processes Директива определяет, сколько дочерних процессов / форков nginx будет порождать из вашего основного процесса. 24 процесса будут иметь смысл только в том случае, если у вас есть 24 ядра ЦП (или не менее 24 виртуальных ядер ЦП в случае технологии Hyper Threading (HT), хотя по-прежнему 12 ядер).

Конфликт ЦП

Определенно да, и это будет вашей самой большой проблемой.

Ожидается ли, что какие-то другие показатели заметно пострадают - что еще я должен тестировать?

Ваша операционная система также должна будет управлять этими процессами. Ваша общая производительность пострадает, и это должно быть очевидно при использовании памяти (хотя и не сильно).

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