Добавлен: 05.12.2023
Просмотров: 25
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Например, если Nginx выполняет проксирование, он обычно использует один файловый дескриптор для подключения клиента, а другой-для подключения к проксируемому серверу, хотя это соотношение намного ниже, если используется поддержка http.
Для системы, обслуживающей большое количество подключений, возможно, потребуется настроить следующие параметры:
-
sys.fs.file-max – Общесистемное ограничение для файловых дескрипторов -
nofile – Ограничение дескриптора пользовательского файла, заданное в файле /etc/security/limits.conf
1.4.3 Рабочие процессы
Nginx может запускать несколько рабочих процессов, каждый из которых способен обрабатывать большое количество одновременных подключений. Мы можем управлять количеством рабочих процессов и тем, как они обрабатывают соединения, с помощью следующих директив:
-
worker_processes – Количество рабочих процессов Nginx (по умолчанию 1). В большинстве случаев запуск одного рабочего процесса на ядро процессора работает хорошо, и auto для достижения этой цели мы рекомендуем установить эту директиву. -
worker_connections – Максимальное количество подключений, которые каждый рабочий процесс может обрабатывать одновременно. Значение по умолчанию равно 512, но у большинства систем достаточно ресурсов для поддержки большего числа. Соответствующая настройка зависит от размера сервера и характера трафика и может быть обнаружена с помощью тестирования.
1.4.4 Поддержание Связи
Поддерживающие соединения могут оказать существенное влияние на производительность за счет снижения нагрузки на процессор и сеть, необходимой для открытия и закрытия соединений.
Nginx завершает все клиентские подключения и создает отдельные и независимые подключения к вышестоящим серверам. Он поддерживает сохраняемые файлы как для клиентов, так и для вышестоящих серверов.
Следующие директивы относятся к сохраняемым данным клиентов:
-
keepalive_requests – Количество запросов, которые клиент может сделать по одному соединению с поддержкой. Значение по умолчанию равно 100, но гораздо более высокое значение может быть особенно полезно для тестирования с помощью инструмента генерации нагрузки, который обычно отправляет большое количество запросов от одного клиента. -
keepalive_timeout – Как долго неактивное соединение с поддержкой активности остается открытым.
Следующая директива относится к вышестоящим системам хранения:
-
keepalive – Количество неработающих подключений с сохранением активности к вышестоящему серверу, которые остаются открытыми для каждого рабочего процесса. Значения по умолчанию не существует.
Чтобы включить непрерывные подключения к вышестоящим серверам, необходимо также включить в конфигурацию следующие директивы:
-
proxy_http_version 1.1;
proxy_set_header Connection "";