轮询和websocket的区别

轮询和websocket的区别

  1. 轮询是传统的方式,不存在浏览器兼容性问题,定时的发送网络请求
  2. 轮询对客户端的电脑资源会造成额外的开销,如果页面中的定时器过多时不能实时获取最新的数据,获取数据会有延迟
  3. websocket他对浏览器的版本有要求,低版本的浏览器不一定能用
  4. websocket可以实时获取最新的数据,不会产生额外的开销。服务器有新的数据之后,会主动推送给客户端
  5. 轮询是定时的发送ajax请求,获取服务器的数据
  6. 在现阶段如果可以,建议使用websocket

实时获取服务器的最新数据

websocket长连接

在客户端和服务器之间建立一个长连接,服务器端有最新的数据之后,会主动的推送给客户端
socket.io

轮询

在客户端定义一个定时器,定时的向服务器发起请求获取最新的数据

面试时常见的问法

  • 在项目中如果实时的获取服务器最新的数据?
  • 如何统计当前的实时在线人数?
  • 如何实现一个聊天室?

你可能感兴趣的:(笔记)