http协议中的keeplive是做什么的?它的适应场景是什么?

本文介绍了HTTP协议中keep-alive机制的工作原理及其与TCP连接之间的关系。keep-alive允许复用TCP连接,减少连接建立与关闭的开销。同时探讨了HTTP与TCP保持连接的不同策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Http底层也是通过TCP传输的。

2.HTTP keep-alive

Http是一个”请求-响应”协议,它的keep-alive主要是为了让多个http请求共享一个Tcp连接,以避免每个Http又新建一个TCP连接。每个Http服务器默认的keep-alive时间可能是不一样的。

3.直接介绍一个场景就可能更容易明白了。客户端发送了一个Http请求,服务器响应后,判断这个Http是否是keep-alive模式的,如果不是则关闭连接,如果是keep-alive,则等待keep-alive time后再关闭,如果这期间再收到一个http 请求,则继续等待最后一个请求的keep-alive time时间,直到keep-alive time时间内没有收到请求,则关闭。

4.上面是HTTP keep-alive的,而TCP是它下一层的协议,本身TCP是长连接的,除非主动关闭。HTTP的keep-alive time一般是15ms, 30ms之类的,如果是超过了HTTP的keep-alive time时间,则HTTP会关闭TCP连接。本身TCP是不会关闭连接的,TCP的keep alive是TCP的保鲜装置,在keep alive timeout 后服务端发送一个监测包来判断连接是否仍保持着,如果还是可连接,则继续保持,它不会主动关闭连接的。而心跳包是为了防止NAT超时。

转载于:https://www.cnblogs.com/hixiaowei/p/9261358.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值