【WebSocket应用解析】看完了还敢说不懂WebSocket吗?

本文始发于我的个人网站:https://www.jianfengke.com/

WebSocket是啥

Websocket是一个持久化的网络通信协议,可以在单个 TCP 连接上进行全双工通讯,没有了Request和Response的概念,两者地位完全平等,连接一旦建立,客户端和服务端之间实时可以进行双向数据传输.

WebSocket跟Http区别与联系

  • HTTP是非持久的协议,客户端想知道服务端的处理进度只能通过不停地使用 Ajax进行轮询或者采用 long poll 的方式来,但是前者对服务器压力大,后者则会因为一直等待Response造成阻塞
  • websocket是独立于HTTP的一种协议,但是websocket必须依赖 HTTP 协议进行一次握手(在握手阶段是一样的),握手成功后,数据就直接从 TCP通道传输,与 HTTP 无关

WebSocket应用

得益于Websocket全双工通信机制,WebSocket可以做弹幕、消息订阅、多玩家游戏、协同编辑、股票基金实时报价、视频会议、在线教育、聊天室等应用实时监听服务端变化。

快速上手WebSocket用法,包括客户端与服务端

首先,我们想搞个这样的东西:

  1. 客户端(前端页面,可多个,代表不同用户)与服务器建立socket连接,建立连接时客户端及服务端都有反应(如输出:加入websocket连接)
  2. 客户端发送消息,服务端接受到信息后,发送特定的消息返回对应客户端
  3. 任一客户端发送消息,服务端接受到信息后,广播到所有客户端

首先我们来实现功能1
我们借助的工具很简单,一个socket包: ws
我们从头安装来应该是这样:

新建文件夹,如命名socket-test,进入该目录
mkdir socket-test
cd socket-test
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值