proxy_socket_keepalive
Директива `proxy_socket_keepalive` включает или отключает использование keepalive для соединений с проксируемыми серверами.
Описание
Директива proxy_socket_keepalive управляет тем, следует ли активировать keepalive для соединений с проксируемыми серверами внутри NGINX. При значении on NGINX поддерживает постоянные соединения с upstream servers для повторного использования, что может значительно снизить задержку, связанную с установлением новых соединений для последующих запросов от клиентов. Это особенно полезно в средах с высокой нагрузкой на upstream servers, так как помогает уменьшить потребление ресурсов и улучшить время отклика.
Директива задаётся в контексте http, server или location, что позволяет гибко настраивать область действия keepalive. По умолчанию директива выключена (off), то есть NGINX не будет использовать keepalive, если оно явно не включено. Включение keepalive также может взаимодействовать с другими директивами, такими как proxy_pass, обеспечивая бесшовную интеграцию без необходимости значительных изменений конфигурации.
При использовании proxy_socket_keepalive важно учитывать настройки со стороны upstream сервера, поскольку если upstream не поддерживает keepalive или имеет более короткий таймаут, чем NGINX, ожидаемого улучшения производительности может не быть.
Пример конфига
http {
server {
location / {
proxy_pass http://backend;
proxy_socket_keepalive on;
}
}
}Убедитесь, что upstream server настроен на поддержку keepalive connections.
Чрезмерная установка keepalive может привести к исчерпанию ресурсов на стороне сервера, если это не обработано должным образом.