在nginx.org中,keepalive config的默认值为-,但是我不太明白这是什么意思。
Syntax: keepalive connections;
Default: —
Context: upstream
This directive appeared in version 1.1.4.
Run Code Online (Sandbox Code Playgroud)
为了使Nginx保持TCP连接有效,应将上游部分和原始服务器都配置为不最终确定连接。上游部分keepalive的默认值表示不进行keepalive,因此每次看到原始服务器的每个请求的TCP流数量增加时,都不会重用连接,这与keepalive相反。您可以使用tcpdump进行检查。
10x Application Performance的10条技巧非常好地描述了它:
客户端保持连接–保持连接减少了开销,尤其是在使用SSL / TLS时。对于NGINX,您可以将客户端可以通过给定连接进行的keepalive_request的最大数量从默认值100增加,并且可以增加keepalive_timeout以允许keepalive连接保持打开状态更长的时间,从而加快后续请求的速度。
上游保持连接–上游连接–与应用程序服务器,数据库服务器等的连接–也从保持连接中受益。对于上游连接,您可以增加keepalive,即为每个工作进程保持打开状态的空闲keepalive连接数。这样可以增加连接的重用性,从而减少了打开全新连接的需要。有关更多信息,请参阅我们的博客文章HTTP Keepalive连接和Web性能。
另请参阅RFC-793第3.5节:
TCP连接可以通过两种方式终止:(1)使用FIN握手的常规TCP关闭序列,以及(2)发送一个或多个RST段并立即丢弃连接状态的“中止”。如果TCP连接被远程站点关闭,则必须通知本地应用程序是正常关闭还是中止。
举两个例子,请看下面的应用数据。
| 归档时间: |
|
| 查看次数: |
8185 次 |
| 最近记录: |