MQTT协议产品化实现-mosquitto开源产品(2)

        前一小节,参考文献[9],论述了mosquitto是如何实现mqtt协议的broker端功能,反向分析给出了系统架构,感兴趣的读者可以根据这个系统架构,快速地理清该产品的每个功能点的关联关系。本小节则从这个开源项目应用价值入手分析。

2.2.2 mosquitto开源应用场景

        在这里举一个mosquitto应用的开源的例子-kubeedge,kubeedge是边缘计算的一个开源项目,直接使用了mosquitto开源项目,如下图红框所示。我们知道mosquitto最主要的是实现了broker的功能,充当着mqtt协议的服务器的角色,负责接收和处理来自客户端的发布和订阅数据。

        为何在这个开源项目中会选择mosquitto,首先是要了解什么是边缘计算,边缘计算是一种新型的分布式的计算模型,相对于云计算来说,计算、存储和网络资源都卸载到最靠近终端的位置,目的是为了减少网络延迟、海量的设备接入和海量的数据对云计算中心的冲击,这是当前比较新的一个研究方向,笔者会有一个专题专门介绍边缘计算,此处只是简单说明一下。

        其次kubedge开源项目是边云协同的典型开源项目,在边缘侧会有终端的孪生设备,在云端会涉及到对终端的控制,这些数据都需要与终端设备进行通信,而mqtt协议作为典型的物联网协议,可以满足对低功耗终端、网络不稳定、高延迟场景下,数据的高质量传输,足够的轻量级,很容易在传感器等计算资源匮乏的设备上实现。mosquitto开源项目除了支持各个版本地mqtt的协议外,对于诸如安全、系统和数据管理都做了很好的支持。借助mqtt broker边缘设备可以订阅终端设备的状态、控制和数据等信息,在边缘侧形成数字孪生设备;在终端设备侧可以定时将自己的属性、能力和状态等信息发布出去,告知边缘侧,而这一切都是mqtt broker的桥梁作用。

          除了上面的边缘计算的开源项目,我们后面一个小节还会提到一个商业化的解决方案-HiveMQ[3]。这个商业化的产品其实本质上也是在开源项目mosquitto的基础上打造出来的,只不过针对安全、高吞吐量、数据标准化模型等方面做了加强,使其达到商业级别。

未完待续...

参考文献:

[3]商业化的mqtt组织HiveMQ Introduction :: HiveMQ Documentation

[4]Networking 101: Transport Layer Security (TLS) - High Performance Browser Networking (O'Reilly) (hpbn.co)

[5]MQTT Security Fundamentals - How to use MQTT in a secure way (hivemq.com)

[6]MQTT协议5.0中文版 | MQTT中文网 (p2hp.com)

[7]Eclipse Mosquitto

[8]Download | Eclipse Mosquitto

[9] MQTT协议产品化实现-mosquitto开源产品(1)_linus_ben的博客-CSDN博客

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值