acceptex_read
Директива `acceptex_read` включает или отключает использование опции сокета AcceptEx для принятия соединений. — NGINX Core
Описание
Директива `acceptex_read` в NGINX используется внутри контекста `events` для управления тем, использует ли NGINX функцию сокета AcceptEx при принятии входящих соединений. AcceptEx — это Windows-специфичное API, которое позволяет серверу сразу читать входящее соединение, снижая количество переключений контекста и повышая производительность. При установке в 'on' NGINX будет пытаться использовать эту возможность для принятия соединений, что при высоких нагрузках может дать более высокую производительность благодаря эффективности обработки сокетов. Однако эта функция применима только на платформах Windows, где поддерживается AcceptEx.\n\nПараметр для этой директивы — флаг, который может быть 'on' или 'off'. Если установить его в 'on', NGINX будет использовать функцию AcceptEx при обработке новых соединений. Соответственно, установка в 'off' означает использование обычного метода принятия соединений. Важно учитывать, что использование AcceptEx может повысить производительность, но также привести к проблемам совместимости с некоторыми сетевыми конфигурациями, что может повлиять на поведение приложения.\n\nОценка нагрузок сервера, типов обрабатываемого трафика и базовой инфраструктуры поможет принять решение о включении этой опции. Следует отметить, что эта функция специфична для Windows и не будет иметь эффекта на установках NGINX, не являющихся Windows. Необходимо провести соответствующее тестирование, чтобы убедиться, что включение AcceptEx не приведёт к нежелательным побочным эффектам в среде.
Пример конфига
events {
acceptex_read on;
}Эта директива применяется только в операционных системах Windows и не действует в системах Unix/Linux.
Включение AcceptEx может вызвать проблемы совместимости с некоторыми сетевыми конфигурациями; рекомендуется тщательно протестировать после включения.