IOT(9)---MQTT 优缺点
MQTT 的独特之处在于,它的每消息标题可以短至 2 个字节。MQ 和 HTTP 都拥有高得多的每消息开销。对于 HTTP,为每个新请求消息重新建立 HTTP 连接会导致重大的开销。MQ 和 MQTT 所使用的永久连接显著减少了这一开销。
MQTT 和 MQ 能够从断开等故障中恢复,而且没有进一步的代码需求。但是,HTTP 无法原生地实现此目的,需要客户端重试编码,这可能增加幂等性问题。
MQTT 是专门针对低功耗目标而设计的。HTTP 的设计没有考虑此因素,因此增加了功耗。
在 HTTP 堆栈上,维护数百万个并发连接,需要做许多的工作来提供支持。尽管可以实现此支持,但大多数商业产品都为处理这一数量级的永久连接而进行了优化。IBM 提供了 IBM MessageSight,这是一个单机架装载服务器,经过测试能处理多达 100 万个通过 MQTT 并发连接的设备。相反,MQ 不是为大量并发客户端而设计的。
您需要能够及时地将通知传递给客户。为此,必须采用某种定期轮询或推送方法;从电池、系统负载和带宽角度讲,推送是最佳解决方案。
HTTP 和 MQTT 客户端都已在大量平台上实现。MQTT 的简单性有助于以极少的精力在额外的客户端上实现 MQTT。
一些企业防火墙将出站连接限制到一些已定义的端口。这些端口通常被限制为 HTTP(80 端口)、HTTPS(443 端口)等。HTTP 显然可以在这些情况下运行。MQTT 可封装在一个 WebSockets 连接中,显示为一个 HTTP 升级请求,从而允许在这些情况下运行。MQ 不允许采用这种模式。
——不支持与第三方HTTP的集成,虽然MQTT协议优于普通的HTTP协议,但是基于传统的HTTP协议的WEB服务器仍然占主流市场,那么这些服务器要实现与MQTT协议的互联互通,以降低升级成本也尤为关键。
——不支持负载均衡,为防止高并发和恶意攻击,负载均衡服务器也必不可少。
——不支持用户管理接口,用户在进行设备的行为数据分析的时候,显得尤为重要,这又是工业4.0、大数据时代的必然需求。
——不支持离线消息,弥补设备离线以后,MQTT服务器对设备的控制信息丢失的问题。
——不支持点对点通信,采用标准的MQTT协议,理论上可以通过相互订阅的方式实现点对点通信,但是逻辑相对复杂,并且对设备的安全性方面存在担忧。当设备B和设备C在同一主题的情况下,设备A无法知道是设备B还是设备C发送的消息,也有可能消息被设备D窃听。
IOT(9)---MQTT 优缺点相关推荐
- IoT -- (八)MQTT优缺点
物联网并不仅仅是一种网络,而是一个新的生态环境,它描述的本质是越来越多的使用物品通过网络连接在一起并可使用单个或者多个的终端设备对它们进行各种控制和使用-当然,工业上的物联网通常连接到的石鼓传感器或者 ...
- 【掌控板2.0】<Mind+>:光控灯、声控灯、语音识别模块、实现Easy IoT上MQTT消息的通讯实验
一.实验目的及要求 [实验一]光控灯 [实验二]声控灯 [实验三]语音识别控制灯 [实验四]实现Easy IoT上mqtt消息的通讯 (1)甲按A键(或触摸P)发送消息至topic1,同时监听topi ...
- 实现mind+下光控灯、声控灯、语音识别灯以及Easy IoT上mqtt消息的通讯
实现mind+下光控灯.声控灯.语音识别灯以及Easy IoT上mqtt消息的通讯 摘要 本篇文章实现四个功能 (除3采用实时模式,其余都采用上传模式) 1.实现天黑自动亮灯,天亮灭灯 2.实现声音强 ...
- IoT -- (六) MQTT和CoAP对比分析
IoT物联网需要标准协议,针对小设备最有前景的两种是MQTT和CoAP. MQTT和CoAP两者均: 开放标准: 比HTTP更适合于受限环境: 提供异步传输机制: 在IP上运行: 有很多种实现 MQT ...
- IOT(6)---MQTT和CoAP
IoT物联网需要标准协议,针对小设备最有前景的两种是MQTT和CoAP. MQTT和CoAP两者均: 开放标准: 比HTTP更适合于受限环境: 提供异步传输机制: 在IP上运行: 有很多种实现 MQT ...
- iot架构 mqtt netty_Netty实现高性能IOT服务器(Groza)之手撕MQTT协议篇上
前言 诞生及优势 MQTT由Andy Stanford-Clark(IBM)和Arlen Nipper(Eurotech,现为Cirrus Link)于1999年开发,用于监测穿越沙漠的石油管道.目标 ...
- IOT(7)---MQTT
MQTT是什么? MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(Publish/Subscribe)模式的轻量级通讯协 ...
- iot架构 mqtt netty_百度IoT:MQTT Broker架构设计
前言 百度IoT的Broker设计我特别想参考的但是技术能力和时间不够去实现--网上只有一篇百度工程师的总结<共享行业的分布式MQTT设计>,这里将围绕这篇文章去讲解. 一.Broker集 ...
- python 天猫精灵_GitHub - IsMrX/ioT: Python MQTT oauth2 接入到天猫精灵
ioT MQTT 接入到天猫精灵 1.带完整oauth2认证 2.访问api接口,可自定义添加多种物联网设备 依赖: python版本: 3.5 django版本: 2.2.2 mysqlclient ...
最新文章
- 微信读书vscode插件_快来!让这款 VSCode 插件吹爆你的彩虹屁!
- 《疯狂Java讲义》5
- JavaScript —— this、闭包、原型、异步
- java 生成.sh文件,Java 生成Bat或SH文件,调用Sqlldr安插数据到Oracle
- WPF GridControl控件的用法举例
- [开发回忆录]第三方模块的松耦合
- Win7 64位系统安装SQL Server2005
- 领扣(LeetCode)最长和谐子序列 个人题解
- 华为HCIE云计算培训笔记第5天
- Linux学习笔记——~/.bash_profile文件
- Database of Fog
- U8 8.9 数据库置疑恢复方法
- 卫星导航系统的发展历史
- 生物信息学(3)——双序列比对之BLAST算法简介
- Windows+GCC得到各种格式的文件正文(office文件,PDF,邮件,html,zip等)
- C++函数的递归调用
- 宽带波束形成 恒定束宽波束形成 学习笔记
- docker安装redis及验证
- 亚马逊推出的「距离助手」,好像孙悟空给唐僧画的圈圈啊!
- Samba+Vsftpd+Mysql搭建平台实验
热门文章
- STM32--MPU内存保护单元(二)
- hive對於數據是懶加載的_hive 安装 文档
- node.js查询oracle,nodejs操作oracle数据库示例
- python查询数据库后更新_python 实现数据库中数据添加、查询与更新的示例代码...
- Android mmap 文件映射到内存介绍
- BizTalk动手实验(十七)ODBC适配器使用
- libevent cs
- 关于线程轮流打印0-99
- Spark运行命令示例
- 关于安装wordpress出现500 Internal Server Error的解决方案