首页 > Web开发 > 详细

Ajax轮询,Ajax长轮询和websocket简单介绍

时间:2019-07-25 12:50:42      阅读:88      评论:0      收藏:0      [点我收藏+]

1、ajax轮询

ajax轮询 的原理非常简单,让浏览器隔个几秒就发送一次请求,询问服务器是否有新信息。

客户端:你好在吗?

客户端:你好在吗?

客户端:你好在吗?

服务端:在的
2、long poll

(长轮询)其实原理跟 ajax轮询 差不多,都是采用轮询的方式,不过采取的是阻塞模型(一直在呼叫,等不到你,我愿孤独终老,很执着),也就是说,客户端发起连接后,如果没消息,就一直不返回Response给客户端。直到有消息才返回或超时,返回完之后,客户端再次建立连接,周而复始,基于事件的触发,一个事件接一个事件。
客户端:你好在吗...........................

服务端:在的

客户端:终于等到你

服务端:东西给你,再见

客户端:你好我又来了...........
Ajax轮询与(长轮询)long poll都属于不断发送http请求,然后等待服务器处理,在这里可以明显的看到http协议一个特点,被动性,服务端不能主动联系客户端,只有客户端发起(服务端:不是我高冷,我也想

主动出击,奈何实力他不允许啊,我也很绝望)。

缺点:Ajax轮询需要服务器有很快的处理速度与快速响应(永动机要诞生了,累死你丫的)。long poll需要很高的并发(高速公路需要有很多的通道口,不然堵车不能怪我),体现在同时容纳请求的能力。

3、webSocket是html5一种新的协议,实现了浏览器与服务器之间的全双工通信,能很好的节省服务器资源与带宽,并在服务器端与浏览器端实现实时通行,他建立在TCP之上, 同http一样,通过tcp来传输数据。
特点:
     1)只需要一次HTTP握手,所以说整个通讯过程是建立在一次连接/状态中,服务器端会知道连接的信息,知道客户端关闭请求,同时由服务器主动推送,当有信息需要发送时,直接发送。

   2)客户端的连接通过session对象存储,能够实现实时推送,与Ajax沦陷和 long poll 相比有明显的优势(webSocket:不要迷恋哥,哥就是这么优秀)。

Ajax轮询,Ajax长轮询和websocket简单介绍

原文:https://www.cnblogs.com/BeyondCrystal/p/11243325.html

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