Http的持久连接(Keep-Alive模式)

关于持久连接

HTTP/1.1允许HTTP设备在事务处理结束之后将TCP连接保持在打开状态,以便为未来的HTTP请求重用现存的连接。在事务处理结束之后仍然保持在打开状态的TCP连接被称为持久连接。持久连接会在不同事务之间保持打开状态,直到客户端或服务器决定将其关闭为止。

优点:重用已对目标服务器打开的空闲持久连接,可以避开缓慢的连接建立阶段,更快速地进行数据的传输。

缺点:管理不当可能会积累出大量的空闲连接,耗费本地客户端以及远程服务器上的资源。

非持久连接会在每个事务处理结束之后关闭。

普通模式,即非Keep-Alive模式时,每个请求/应答,客户端和服务器都要新建一个连接,完成之后立即断开连接(http为无连接的协议);

当使用Keep-Alive模式(又称为持久连接、连接重用)时,客户端到服务器的连接持续有效,之后又出现对服务器的请求时,避免了重新建立连接。

 

HTTP连接实际上就是TCP连接和一些使用连接的规则。

假设要访问 http://www.joes-hardware.com:80/power-tools.html,在浏览器中输入这个URL时,会执行下图中所示的步骤:

第(1)~(3)会将服务器的IP地址和端口号从URL中分离出来;

在第(4)步中建立到Web服务器的TCP连接,并在第(5)步通过这条连接发出一条请求报文,在第(6)步读取响应,并在第(7)步关闭连接。


套接字API允许用户创建TCP的端点数据结构,将这些端点与远程服务器的TCP端点进行连接,并对数据流进行读写。TCP API 隐藏了所有底层网络协议的握手细节,以及TCP数据流与IP分组之间的分段和重装细节。



  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值