测试之路--随手记:WebSocket

哈喽大家好,我是小歪~今天在工作中遇到一种协议---WebSocket,之前没怎么接触过,请教了开发大佬,下班回来在网上也查了查相关概念。就准备做个记录。

01 WebSocket协议概念





WebSocket是一种协议。与http类似。都是基于tcp的一种可靠性协议。与http不同的是,http是一种无状态协议。而WebSocket则是一种长链接协议,可以长时间与服务器保持一个连接状态,使客户端与服务端保持持续的数据交流。

如下是网上大佬解释,直接不厚道的粘贴37eaea10c8d43cfff65bd0af25c02241.png

  • 什么是websocket

    • WebSocket是HTML5下一种新的协议(websocket协议本质上是一个基于tcp的协议)它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的;Websocket是一个持久化的协议

  • websocket的原理

    • websocket约定了一个通信的规范,通过一个握手的机制,客户端和服务器之间能建立一个类似tcp的连接,从而方便它们之间的通信在websocket出现之前,web交互一般是基于http协议的短连接或者长连接websocket是一种全新的协议,不属于http无状态协议,协议名为"ws"

  • websocket与http的关系

ead6fdffef50e6efa72118ad3186007b.png

    • 相同点:

      • 都是基于tcp的,都是可靠性传输协议

      • 都是应用层协议

    • 不同点:

      • WebSocket是双向通信协议,模拟Socket协议,可以双向发送或接受信息

      • HTTP是单向的

      • WebSocket是需要浏览器和服务器握手进行建立连接的而http是浏览器发起向服务器的连接,服务器预先并不知道这个连接

    •  联系:

      • WebSocket在建立握手时,数据是通过HTTP传输的。但是建立之后,在真正传输时候是不需要HTTP协议的

    • 总结(总体过程):

      • 首先,客户端发起http请求,经过3次握手后,建立起TCP连接;http请求里存放WebSocket支持的版本号等信息,如:Upgrade、Connection、WebSocket-Version等;

      • 然后,服务器收到客户端的握手请求后,同样采用HTTP协议回馈数据;  

      • 最后,客户端收到连接成功的消息后,开始借助于TCP传输信道进行全双工通信。

CSDN链接:https://blog.csdn.net/qq_54773998/article/details/123863493

02 应用场景、总结





请教了开发大佬。就目前很多项目。这种方式比较少见了。常见于消息通信项目,直播间推流项目等,主要还是用于实时通信相关的项目居多。

websocket是一种可以有服务器发起反向发起请求的一种协议,主要数据有更新,就可以推送给客户端使用。与http相比较。http就像是单信道,类似对讲机;websocket就如同是语音电话,双方同时在线,数据交流更直接,更快捷。

最后附上下班路上的随手一拍。北京的今天的傍晚还不错

b25fe8f523a9cfe17b6b9c4d13e1d348.jpeg


                                                                                        随手记-2022年06月14日

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值