博客
关于我
Nginx 的配置文件中的 keepalive 介绍
阅读量:798 次
发布时间:2023-02-15

本文共 731 字,大约阅读时间需要 2 分钟。

Nginx 的配置文件中 http 模块有关于 keepalive 的一些字段,这里的 keepalive 表示的是 HTTP1.1 的长连接。

长连接是 HTTP1.0 性能上的一个很大的问题,那就是每发起一个请求,都要新建一次 TCP 连接(三次握手),而且是串行请求,做了无谓的 TCP 连接建立和断开,增加了通信开销。

为了解决上述 TCP 连接问题,HTTP/1.1 提出了长连接的通信方式,也叫持久连接。这种方式的好处在于减少了 TCP 连接的重复建立和断开所造成的额外开销,减轻了服务器端的负载。

持久连接的特点是,只要任意一端没有明确提出断开连接,则保持 TCP 连接状态。

在 Nginx 的配置文件中,keepalive_timeout 65 表示当进行 TCP 连接后,如果在 65s 内没有活动,则关闭长连接。keepalive_requests 1000 表示一个长连接中能够处理的最大请求数。keepalive_time 1h 表示通过一个长连接可以处理请求的最长时间。

在 upstream 模块中,keepalive 也起到关键作用。Nginx 作为反向代理,将请求转发到上游服务器时,需要在上游服务器之间建立长连接,这样可以减少客户端与服务器之间的连接次数,提升性能。

在 Nginx 配置中,upstream 模块中的 keepalive 参数用于限制上游服务器的长连接数量。keepalive_timeout、keepalive_requests、keepalive_time 的含义和 http 模块上的含义一致。

通过合理配置 keepalive 参数,可以有效优化 Nginx 的性能,提升 HTTP 请求的处理能力。

转载地址:http://glcfk.baihongyu.com/

你可能感兴趣的文章
Nginx下配置codeigniter框架方法
查看>>
Nginx的Rewrite正则表达式,匹配非某单词
查看>>
Nginx的使用总结(一)
查看>>
Nginx的是什么?干什么用的?
查看>>
Nginx访问控制_登陆权限的控制(http_auth_basic_module)
查看>>
nginx负载均衡的五种算法
查看>>
Nginx配置ssl实现https
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NI笔试——大数加法
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
No 'Access-Control-Allow-Origin' header is present on the requested resource.
查看>>
Node.js安装与配置指南:轻松启航您的JavaScript服务器之旅
查看>>
NR,NF,FNR
查看>>
nrf开发笔记一开发软件
查看>>
NSSet集合 无序的 不能重复的
查看>>
nullnullHuge Pages
查看>>
numpy 用法
查看>>
Numpy如何使用np.umprod重写range函数中i的python
查看>>
oauth2-shiro 添加 redis 实现版本
查看>>
OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
查看>>