# websocket介绍

现在,很多网站为了实现推送技术,所用的技术都是 Ajax 轮询。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器。这种传统的模式带来很明显的缺点,即浏览器需要不断的向服务器发出请求,然而HTTP请求可能包含较长的头部,其中真正有效的数据可能只是很小的一部分,显然这样会浪费很多的带宽等资源。

xcooo

所以单向请求的缺点:

  • 无法监听连续状态变化 (HTTP无状态)
  • 效率低
  • 浪费资源

HTML5 定义的 WebSocket 协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯。

Websocket的常见应用:

  • 聊天室
  • 消息系统:推送消息、实况、股票基金等实时变化的数据
  • 点赞
  • 直播评论(弹幕)
  • 游戏
  • 协同编辑/编辑
  • 基于位置的应用
  • 在线教育(多媒体聊天、文字消息)

# 本课程的学习路径:

  • 了解Websocket基本概念 what
  • 了解Websocket工作原理(解决的问题)Why
  • 搭建Websocket服务 how
  • 学习Websocket的基本使用 how
  • 具体的Websocket应用(消息应用)

# 本课程的学习目标:

  • 了解websocket基本工作原理
  • 学会搭建websocket nodejs的服务端
  • 学习使用websocket客户端
  • 掌握常见的websocket方法、事件、属性
  • 学生聊天室应用的编写

# 本课程的学习准备:

上次更新: 2020/10/28 下午11:02:30