美文网首页
Comet vs SSE vs Websocket

Comet vs SSE vs Websocket

作者: vermouth_Fee | 来源:发表于2019-08-06 17:21 被阅读0次

在标准的HTTP模型中,服务器无法与客户端启动连接、发送未经请求的HTTP响应给客户端,因此,为了尽快接收异步事件,就需要服务器能在不等待的情况下向客户端发送更新消息,目前主要存在以下几种方法:

长/短轮询:(客户端拉动)

Iframe流:(服务端推送)

SSE:(服务端推送)

Websocket:(服务端推送)

轮询

轮询是客户端定期向服务端请求新数据的一种技术,主要分为短轮询和长轮询。

    短轮询: 基于Ajax请求的计时器,固定延时调用;

    长轮询:基于Comet(是一种用于web的推送技术,能使服务器实时地将更新的信息传送到客户端,而无须客户端发出请求),建立连接后,一直等待服务端有数据之后的响应(或超时),返回后再重新连接;

Iframe流(HTTP流式传输)

iframe流是在页面中插入一个隐藏的iframe,利用其src属性在服务器和客户端之间创建一条长连接,服务器向iframe传输数据(通常是HTML,对客户端js的调用)来实时更新页面。

Tip:轮询和Iframe流都属于Comet,一种用于web的推送技术,能使服务器实时地将更新的信息传送到客户端,而无需客户发出请求

SSE

Server-Send Events 实现了客户端请求服务端,然后服务端利用与客户端建立的这条通信连接push数据给客户端,客户端接收数据并处理。

本质:以流信息的方式通信,完成一次用时很长的下载。

特点:

    1. 使用HTTP协议,现有的服务器软件都支持;

    2. 轻量级,使用简单;

    3. 默认支持断线重连,Websocket需要自己实现;

    4. 一般只用来传送文本,二进制数据需要编码后传送;

    5. 支持自定义发送的消息类型。

Websocket

Websocket是一种应用层协议,提供了客户端和服务端之间全双工通信机制。

特点:

     1. 服务器可以主动向客户端推送消息,客户端也可以主动向服务器发送信息;

     2. 建立在TCP协议之上,服务器端的实现比较容易;

     3. 没有同源限制,客户端可以与任意服务器通信;

     4. 协议标识符是ws(如果加密,则为wss),服务网址就是URL

     5. 默认支持传送二级制数据,也可以传输文本。

优缺点及适用场景对比

相关文章

  • Comet vs SSE vs Websocket

    在标准的HTTP模型中,服务器无法与客户端启动连接、发送未经请求的HTTP响应给客户端,因此,为了尽快接收异步事件...

  • 轮询、长轮询(comet)、长连接(SSE)、WebSocket

    阮一峰-WebSocket 教程[http://www.ruanyifeng.com/blog/2017/05/w...

  • HTTP VS WebSocket VS RSocket

    在比对 HTTP、WebSocket、RSocket 之前,我们先通过下面这张 OSI 七层模型的图快速梳理一下网...

  • 【五行论水】

    壬vs癸阳vs阴动vs静白vs黑勇vs谋狂vs逸涛vs渗敏vs睿急vs缓响vs寂奔vs驻吐vs纳 。。。。。。 水...

  • HTTP VS WEBSOCKET

    HTTP和WEBSOCKET是现在主流的两个网络协议,下面我们对其进行介绍和比较。 HTTP(S)协议 HTTP(...

  • 【土为何物】

    戊vs己阳vs阴厚vs薄重vs轻凸vs平实vs虚深vs浅伟vs卑藏vs盖信vs疑稳vs浮强vs弱 土代表环境环境寓...

  • 【五行论木】

    甲vs乙 阳vs阴 直vs曲 纵vs横 高vs宽 挺vs垂 衝vs铺 优vs良 通vs达 干vs枝 上vs下 粗v...

  • 【五行论火】

    丙vs丁 阳vs阴 散vs聚 泛vs专 远vs近 猛vs文 爆vs缩 快vs慢 扩vs定 周vs点 外vs里 宏v...

  • 【五行论金】

    庚vs辛 阳vs阴 刚vs柔 锋vs锐 劈vs戳 悍vs险 确vs准 决vs绝 边vs端 理vs据 冷vs润 攻v...

  • 侃一侃WebSocket

    今天不讲太多具体的技术,随便侃一侃WebSocket,想到哪说哪。 和comet相比 相比comet技术,w...

网友评论

      本文标题:Comet vs SSE vs Websocket

      本文链接:https://www.haomeiwen.com/subject/edolmxtx.html