谈谈你对WebSocket的理解

一、什么是WebSocket

WebSocket是一种基于TCP的全双工通信协议,在应用层。

1.为什么需要WebSocket

1、传统上的HTTP协议它是无状态的,服务器不能够识别是哪个客户端发送的请求,不能够保存状态。
2、WebSocket弥补了这一问题,在客户端向服务端发送请求之后,服务器处理请求并返回到客户端,使用WebSocket可以使得服务器主动向浏览器推送消息

2.WebSocket与HTTP的区别

1、HTTP是客户端直接向服务端发送请求,WebSocket是在完成一次握手之后建立连接
2、发送HTTP请求的时候,服务器不能记住是谁发给他的
3、发送WebSocket请求,服务器可以记住是谁发给他的

二、WebSocket协议的原理

与服务器进行三次握手,建立TCP连接
向服务器发送HTTP请求,请求中包含WebSocket的版本信息:包括upgrade、connection等等。
服务器处理请求并返回客户端,此时可以进行WebSocket请求了
服务端也可以主动向客户端推送消息了。

三、WebSocket的优缺点

优点:建立WebSocket连接之后,客户端与服务端交流更方便
     客户端只需要向服务端发送一次请求,服务端主动向客户端发送消息
缺点:在服务端的状态不会频繁变化的时候,就不需要使用WebSocket连接了,浪费性能

四、WebSocket应用场景

即时聊天室

实时地图

五、WebSocket断线重连

客户端每隔一段时间都会向服务端发送一次请求,证明客户端还活着。

六、总结

  • 只需要向客户端发送一次请求,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值