Nginx 在 1.19.10 以後開始支援設定 keepalive_time
,初始值如下:
// https://nginx.org/en/docs/http/ngx_http_core_module.html
Default: keepalive_requests 1000;
Default: keepalive_time 1h;
Default: keepalive_timeout 75s;
// https://nginx.org/en/docs/http/ngx_http_upstream_module.html
Default: keepalive_requests 1000;
Default: keepalive_time 1h;
Default: keepalive_timeout 60s;
keepalive_time
限制了 total connection lifetime,如這個 commit 所說明。
在原先的設定裡面,其實 keepalive connection 也不是無限久,理論上最多就是 keepalive_requests * keepalive_timeout
的時間。 是說 75000s 將近 21h 但 keepalive_time
default 卻是 1h 會不會有點太短。