
文章图片
在这篇文章中 , 大家将了解MQTT协议 , 以及为什么在许多物联网应用中使用它 。
MQTT协议最初由IBM开发 , 并且是专有的 。 它的开发是为了解决石油和天然气行业的传感器通过卫星与远程服务器连接的问题 , 而且是一种经济有效的方式 。 然而 , 它现在是一个由OASIS监督的开放协议 。
MQTT是一种与HTTP类似的应用层协议 。 然而 , HTTP和MQTT之间存在显著差异 。 其中 , 在某些物联网应用中 , MQTT优于HTTP 。
【客户端|为什么在物联网应用中使用MQTT而不是HTTP?有何不同?】首先 , HTTP是用于客户端服务器计算的以文档为中心的请求-响应协议 。 HTTP是万维网的基础 , 但它不是专门为机器之间通信而设计的 。 另一方面 , MQTT是一种机器对机器、以数据为中心的轻量级协议 , 旨在用于在资源受限的环境中运行 。 许多物联网项目要求设备在各种资源有限下运行 , 如有限的处理能力、无人值守的网络操作、高度不可靠的网络、能源限制等 , 在这种受限环境中 , MQTT比HTTP更受欢迎 。 与HTTP中的直接客户端服务器交互不同 , MQTT在发布/订阅范例下运行 , 中间有MQTT代理 。 客户端可以将主题发布到MQTT代理或订阅主题 , 同一客户端可以发布主题X和Y , 并订阅由另一个MQTT客户端发布的主题Z , MQTT还允许MQTT客户端和代理之间的持久连接以及不同的服务质量级别 , 这使得它非常适合各种受限环境 , 因为在这种情况下 , 它比HTTP更节能、更快 。
现在 , 来了解一些术语 。 连接到MQTT代理的所有设备都是MQTT客户端 。 MQTT客户端的范围从计算机到移动电话 , 再到小型受限的传感器设备 , MQTT代理是一个MQTT服务器 , 它在与其连接的不同MQTT客户端之间传输数据 。 当客户端希望向代理发送数据时 , 它会“发布”该数据或主题 , 当MQTT客户端希望接收由另一个MQTT客户端发布的此数据时 , 它订阅此主题 , 然后MQTT代理将此主题传输给代理 。 这与HTTP不同 , MQTT客户端不需要知道彼此的IP地址或端口号 , 他们所需要做的就是连接到同一个MQTT代理 , 单个MQTT代理可以处理大量MQTT客户端 , 并且每个代理的数量不同 。
- playstation5|手慢就没有了!索尼PS5国行版将在双十二补货:库存一万台
- 中关村|柳传志在这里被骗、掘金,书写半部科技史的中关村经历了什么?
- saas|上半年的Redmi K40 Pro,现在入手2500元不到,还等?
- 英特尔|英特尔正在通过非K版本的Alder Lake改变现状
- oppo reno|到OPPO线下体验了一番,终于知道Reno7系列为什么卖得这么好了
- 亚马逊|麒麟990,麒麟980,麒麟985的机型现在还能入手嘛?
- airpods3|这才是真相:柳传志退休金不是1亿,杨元庆年薪1.7亿比库克低,总部不在美国
- 小米科技|华为手机想在2023年实现王者归来,只有2种可能,但可能性极低!
- spring|性能最强5G手机,现在现货供应,好评率97%
- 高通骁龙|首个骁龙8 Gen 1跑分出炉,现在入手iQOO Neo5还划算吗?
