短轮询、长轮询、长连接、短连接和WebSocket

短连接: 客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。

长连接: 客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接

HTTP协议的长连接和短连接,实质上是TCP协议的长连接和短连接。

短轮询: 浏览器定时向服务器发送请求,看有没有更新的数据。(重复发送Http请求,查询目标事件是否完成,优点:编写简单,缺点:浪费带宽和服务器资源)

长轮询: 页面发起一个到服务器的请求,然后服务器一直保持连接打开,直到有数据可以发送。发送完数据之后,浏览器关闭连接,随即又发送一个到服务器的新请求。这一过程在页面打开期间一直持续不断。(在服务端hold住Http请求(死循环或者sleep等等方式),等到目标时间发生,返回Http响应。优点:在无消息的情况下不会频繁的请求,缺点:编写复杂)

WebSocket: 客户端发送一次http websocket请求,服务器响应请求,双方建立持久连接,并进行双向数据传输,后面不进行HTTP连接,而是使用TCP连接。

参考资料:

发表评论?

0 条评论。

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据