轮询、长轮询、短连接、长连接区别对比

2,621 阅读1分钟

这几个请求连接方式很容易混淆,作者根据自己的理解整理了一下,图画的略丑...

轮询

定义

Client 定期向 Server 发送请求,以此保持与 Server 端数据的同步。建立了多次的Http短连接

图解


长轮询

定义

HTTP 层,保持连接,Server 接收到 Client 的请求之后,如果没有数据更新,则连接保持一段时间,直到有数据或者超时才会返回。

图解


短连接

定义

即一次普通的Http请求。Server收到请求及时响应。

长连接

定义

HTTP1.1通过使用Connection:keep-alive进行长连接,默认进行持久连接,把多个 HTTP 请求合并为一个。在一次 TCP 连接中可以完成多个 HTTP 请求,但是对每个请求仍然要单独发 header。实际是Tcp层的长连。

图解