uwsgi_socket_keepalive

`uwsgi_socket_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 配置中,用以控制是否在 uWSGI 套接字连接上启用保活功能。当启用保活时,NGINX 会定期通过该套接字发送保活探测,以确保连接保持活动状态,防止因空闲而被关闭。这在长连接的 uWSGI 环境中尤其有用,否则连接可能在 HTTP 请求完全处理完之前就超时断开。 该指令以布尔标志作为参数。将其设置为 'on' 可为 uWSGI 连接启用保活,设置为 'off' 则禁用此功能。默认情况下,保活为禁用(off)。启用保活可提高性能和可靠性,尤其是在高流量应用中频繁重用连接的情况下。不过,需要注意的是并非所有服务器或网络配置都能很好地响应保活设置,可能需要进行细致的调优以达到最佳效果。 该指令可在 `http`、`server` 或 `location` 上下文中设置,根据应用需求提供配置灵活性。通常建议在负载下测试保活连接,以确保它们在不影响应用性能或行为的前提下提供预期的好处。

配置示例

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

确保你的 uWSGI 服务器支持 keepalive 连接;socket 配置可能需要调整。

在启用和禁用 keepalive 的情况下测试应用程序性能,以确定针对你的工作负载的最佳配置。