首页 > Web开发 > 详细

http keepalive原理(转)

时间:2021-03-30 16:29:20      阅读:20      评论:0      收藏:0      [点我收藏+]

KeepAlive是就是通常所称的长连接。KeepAlive带来的好处是可以减少tcp连接的开销,这对于短response body的请求效果更加明显。同时,可以为采用HTTP协议的交互式应用提供良好的session支持。

2、KeepAlive的原理

    在HTTP1.0和HTTP1.1协议中都有对KeepAlive的支持。其中HTTP1.0需要在request中增加"Connection: keep-alive" header才能够支持,而HTTP1.1默认支持。

2.1 HTTP1.0 KeepAlive支持的数据交互流程如下:

    a)Client发出request,其中该request的HTTP版本号为1.0。同时在request中包含一个header:"Connection: keep-alive"。

    b)Web Server收到request中的HTTP协议为1.0及"Connection: keep-alive"就认为是一个长连接请求,其将在response的header中也增加"Connection: keep-alive"。同时不会关闭已建立的tcp连接。

    c)Client收到Web Server的response中包含"Connection: keep-alive",就认为是一个长连接,不close tcp连接。并用该tcp连接再发送request。(跳转到a))

2.2 HTTP1.1 KeepAlive支持的数据交互流程如下:

    a)Client发出request,其中该request的HTTP版本号为1.1。

    b)Web Server收到request中的HTTP协议为1.1就认为是一个长连接请求,其将在response的header中也增加"Connection: keep-alive"。同时不会关闭已建立的tcp连接。

    c)Client收到Web Server的response中包含"Connection: keep-alive",就认为是一个长连接,不close tcp连接。并用该tcp连接再发送request。(跳转到a))

 

http 1.0中默认是关闭的,需要在http头加入"Connection: Keep-Alive",才能启用Keep-Alive;http 1.1中默认启用Keep-Alive,如果加入"Connection: close ",才关闭。


--------------------- 
作者:fengqiaojiangshui 
来源:CSDN 
原文:https://blog.csdn.net/fengqiaojiangshui/article/details/45341331 
版权声明:本文为博主原创文章,转载请附上博文链接!

http keepalive原理(转)

原文:https://www.cnblogs.com/haleylan/p/14596319.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!