http长短连接和长短轮询

Posted 等风来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http长短连接和长短轮询相关的知识,希望对你有一定的参考价值。

http长连接

http长连接是指http的请求头和响应头的均有connection: keep-alive的请求,
也就是客户端和服务端均为keep-alive的请求.

实际上,http是请求/响应式的,无长短之分,长连接实际上是指TCP的连接为长连接。
如此,多个http请求就可以复用一个TCP连接,减少了了TCP连接建立和断开的消耗。

http的长连接是从http1.1开始的,http1.0没有keep-alive这个设置。

长连接相应字段

connection:keep-alive 请求为长连接
timeout:30 TCP连接超时时间,超时后会断开连接
max:5 TCP连接被http请求最大复用次数,每有一个http请求用它,max会减1,直至max为0,强制断开连接

http短连接

客户端或服务端请求头connection:closed的http请求。

http的长轮询

是指服务器接收到请求后,有数据会立即返回,没有数据则会将连接hold住,挂起一段时间,
直到有数据或者超时返回。客户端收到响应后,会立即重新发起一个长轮询,以保证能够及时的接收到
服务端的实时数据。

长轮询会占用服务器的连接数和资源,功能是可以减少客户端的请求次数。

http的短轮询

服务端收到请求后,无论有无数据都立即返回,客户端定时的向服务端发送请求。

短轮询实时性低,并且会占用服务器的资源。

以上是关于http长短连接和长短轮询的主要内容,如果未能解决你的问题,请参考以下文章

网络编程:HTTP:长短链接

网络编程:HTTP:长短链接

网络编程:HTTP:长短链接

HTTP详解长短连接,管道化,队头阻塞及它们之间的关系

长链接短连接长轮询短轮询

HTTP的长短连接介绍