高性能网关的网络连接

高性能网关的网络连接

对于高性能网关而言,连接的可复用是至关重要的,在高并发场景下,如果连接均为短链接,网关将疲于创建与断开连接。

Http 长连接设置

HTTP1.1通过使用 Connection:keep-alive 进行长连接,HTTP 1.1默认进行持久连接。在一次 TCP 连接中可以完成多个 HTTP 请求,但是对每个请求仍然要单独发 header。如果需要使用短链接,需要显示的设置请求头 Connection: close

通常在服务端会设置长连接的参数,主要是设置请求头里面的 Keep-Alive 参数。该参数包括了两个属性分别是 timeout 和 max。timeout 是最长空闲连接保持时间(单位是秒),max 最大长连接请求数。如果设置为0,则不生效。设置使用栗子是 Keep-Alive: timeout=5, max=1000 。以 tomcat 为例,在 server.xml 中配置 maxKeepAliveRequests 和 keepAliveTimeout 来控制上述参数。

TCP 长连接

TCP 长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持(不发生RST包和四次挥手)。

连接→数据传输→保持连接(心跳)→数据传输→保持连接(心跳)→……→关闭连接(一个TCP连接通道多个读写通信);

这就要求长连接在没有数据通信时,定时发送数据包(心跳),以维持连接状态;

TCP保活功能,保活功能主要为服务器应用提供,服务器应用希望知道客户主机是否崩溃,从而可以代表客户使用资源。如果客户已经消失,使得服务器上保留一个半开放的连接,而服务器又在等待来自客户端的数据,则服务器将应远等待客户端的数据,保活功能就是试图在服务器端检测到这种半开放的连接。

如果一个给定的连接在两小时内没有任何的动作,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值