实现即时通信 记录

浏览器如何实现即时通讯 --> websocket

  1. 概念:严格意义上HTTP协议只能做到客户端请求服务器,服务器做出相应,做不出让服务器主动给酷虎推送消息

  2. 即时通讯方案:短轮询(历史),长轮询(历史),SSE,websocket

  3. 短轮询:开个定时器,每隔一段时间发送请求(实时性不好)

  4. 长轮询:发送一个请求,服务器只要数据不更新,就一直阻塞(服务器压力过大)

  5. SSE:服务端推送事件,它是一种基于http协议,允许服务端向客户端推送新数据的html5技术。

    1. 优点:基于http。无需太多该制造就能使用,相比websocket要简单一些

    2. 缺点:基于文本传输,效率没有websocket高,基于http协议,不是严格的双向通信

  6. websocket:这是基于tcp协议的全新,独立的协议,作用是在服务端和客户端之间建立实时的双向通信

    1. 优点:真正意义上的双向实时通信,性能好,演示低

    2. 缺点:由于是独立于http的协议,因此要使用的话需要对项目改造

    3. 使用websocket实现双向通信:node + js

你可能感兴趣的:(服务器,websocket,网络)