uwsgi_socket_keepalive

Директива `uwsgi_socket_keepalive` включает или отключает keepalive на сокетном соединении uWSGI для повышения надежности. — NGINX HTTP Core

uwsgi_socket_keepalive
httpserverlocation
Синтаксисuwsgi_socket_keepalive on | off;
По умолчаниюoff
Контекстhttp, server, location
МодульNGINX HTTP Core
Аргументыflag

Описание

Директива `uwsgi_socket_keepalive` используется в конфигурациях NGINX для управления включением функциональности keepalive на uWSGI-соединениях. Когда keepalive включен, NGINX периодически отправляет keepalive-запросы по сокету, чтобы убедиться, что соединение остается активным, предотвращая его разрыв из‑за неактивности. Это особенно полезно в окружениях, где длительные uWSGI‑соединения в противном случае могли бы разорваться по таймауту до завершения обработки HTTP‑запроса. Директива принимает логический флаг в качестве аргумента. Установка значения 'on' включает keepalive для uWSGI‑соединений, тогда как 'off' отключает эту функцию. По умолчанию keepalive выключен (off). Включение keepalive может привести к улучшению производительности и надежности, особенно в высоконагруженных приложениях, где соединения часто переиспользуются. Однако важно учитывать, что не все серверные или сетевые конфигурации одинаково корректно реагируют на параметры keepalive, и может потребоваться тщательная настройка для достижения оптимальных результатов. Эту директиву можно задавать в контекстах `http`, `server` или `location`, что обеспечивает гибкость конфигурации в соответствии с требованиями вашего приложения. Как правило, рекомендуется тестировать Keepalive‑соединения под нагрузкой, чтобы убедиться, что они приносят ожидаемую пользу без негативного влияния на производительность или поведение приложения.

Пример конфига

location /app {
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:8000;
    uwsgi_socket_keepalive on;
}

Убедитесь, что ваш сервер uWSGI поддерживает keepalive-соединения; возможно, потребуется изменить конфигурацию сокета.

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