34|WebSocket:如何在消息队列内核中支持WebSocket?
许文强
你好,我是文强。
这节课我们来看一下如何在消息队列内核中支持 WebSocket。如果你以前了解过 WebSocket,就知道 WebSocket 是一个协议。我们在第 03 讲中讲过,消息队列在自身私有协议的基础上,还会支持像 HTTP 这样的公有协议。
那为什么需要支持 WebSocket 协议呢?又是如何支持的?带着这两个问题,我们开始今天的课程。
WebSocket 是什么
首先,我们来了解一下 WebSocket 是什么。
WebSocket 是一种基于 TCP 传输协议的应用层协议,它设计的初衷是解决 Web 应用程序中的实时双向通信问题。它跟 HTTP 协议一样,也是一种标准的公有协议。所以它也有协议头、协议体、数据帧格式、建立连接、维持连接、数据交换等等各个细节。
这里网上的资料有很多,就不展开细讲了。你只要记住一个重点:WebSocket 是一个可以在浏览器中使用的支持双向通信的应用层协议,就可以了。
那什么是双向通信呢?
双工(双向)通信
回答这个问题之前,我们来回顾一下计算机网络基础中的单工通信和双通通信。
单工通信指的是数据只能在一个方向上传输,而不能在另一个方向上传输。例如,广播电台只能向接收者发送信息,接收者无法向电台发送信息,这是单工通信的一种。
双工通信指的是数据可以在两个方向上传输。例如,电话通信就是双工通信的一种,通话双方可以同时说话和倾听对方的声音。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
WebSocket 协议是一种基于 TCP 的应用层协议,旨在解决实时双向通信问题。它具有持久化连接、全双工通信、低带宽开销、与 HTTP 兼容和跨域通信等特点,使其成为高度实时性和低延迟场景的理想解决方案。本文深入浅出地介绍了 WebSocket 协议的特性、应用场景以及在消息队列内核中的支持方式。文章还提到了 WebSocket 客户端使用示例和 WebSocket 协议与消息队列的关系,强调了消息队列需要支持 WebSocket 协议的重要性。此外,文章还介绍了 WebSocket 协议和 MQTT Broker 结合的优势,并详细阐述了在消息队列内核中支持 WebSocket 协议的四部分工作。另外,Pulsar 和 RabbitMQ 是目前业界主流消息队列中支持 WebSocket 协议的代表。总的来说,本文通过介绍 WebSocket 协议的特性和消息队列内核中的支持方式,为读者提供了对 WebSocket 协议及其在消息队列中的应用的全面了解。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深入拆解消息队列 47 讲》,新⼈⾸单¥59
《深入拆解消息队列 47 讲》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论