「物联网技术」MQTT 常见问题和5个代理的基本基准测试

简介: 「物联网技术」MQTT 常见问题和5个代理的基本基准测试

MQTT是什么?

MQTT代表MQ遥测传输。它是一种发布/订阅、极其简单和轻量级的消息传递协议,专为受限设备和低带宽、高延迟或不可靠的网络设计。设计原则是尽量减少网络带宽和设备资源要求,同时也试图确保可靠性和某种程度的交付保证。这些原则也使得协议成为新兴的“机器对机器”(M2M)或“物联网”世界的理想协议,也适用于带宽和电池电量非常昂贵的移动应用程序。

MQTT是由谁发明的吗?

MQTT是由IBM的Andy Stanford-Clark博士和Arcom(现在的Eurotech)的Arlen Nipper在1999年发明的。

MQTT在哪里使用?

自1999年以来,MQTT已在各种行业中广泛实现。Projects页面上列出了一些更有趣的示例。

MQTT是标准吗?

v5.0和v3.1.1现在是OASIS标准(ISO也批准了v3.1.1)。

MQTT如何与SCADA协议和MQIsdp相关?

“SCADA协议”和“MQ Integrator SCADA设备协议”(MQIsdp)都是现在称为MQ遥测传输(MQTT)的旧名称。该协议也被称为“WebSphere MQTT”(WMQTT),尽管这个名称也不再被使用。

有标准端口供MQTT使用吗?

是的。IANA为MQTT保留了TCP/IP端口1883。还注册了TCP/IP端口8883,用于在SSL上使用MQTT。

MQTT支持安全性吗?

可以通过协议V3.1中的MQTT包传递用户名和密码。可以使用SSL处理跨网络的加密,而不依赖于MQTT协议本身(值得注意的是,SSL不是最轻的协议,而且确实增加了大量的网络开销)。通过对发送和接收的数据进行加密的应用程序可以增加额外的安全性,但这不是协议内置的内容,以保持简单和轻量级。

对几个不同的MQTT代理进行了非常基本的性能比较,并很快想要分享我的见解。请注意,这些基准测试只是很肤浅的。我的目的不是进行深入的评估,而是大致了解他们的表现。

测试设置

  • 为了在发布场景中执行负载测试,我使用 takanorig/mqtt-bench,这是用Go编写的MQTT基准测试工具。
  • 所有测试都使用选项-count 10000、-clients 25和-size 4096运行,这意味着模拟25个并发MQTT客户机,每个客户机发送10,000条大小为4千字节的消息。
  • 负载测试工具和相应的代理都在Ubuntu 18.04的6核、12线程、3.6 Ghz的机器上本地运行。
  • 除非另有说明,否则代理是用默认配置启动的。

测试的Brokers

下面是对Broker的测试。


结果

这些是我得到的结果。越高越好。

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
3月前
|
数据采集 传感器 监控
Modbus 与 MQTT 协议兼容:MyEMS 的泛在能源数据采集技术实现
MyEMS深度融合Modbus与MQTT协议,破解能源数据采集中协议碎片化、网络异构、数据孤岛等难题。通过Modbus接入95%以上工业设备,实现现场数据精准“拉取”;依托MQTT构建高效物联网传输通道,支持多源数据主动“推送”与云端集成。边缘侧采集规整,中心侧汇聚分析,形成统一、可靠、低延迟的数据流。该架构兼具高兼容性、强扩展性与低运维成本,广泛应用于工业园区、商业楼宇及集团型企业,支撑实时监控、AI分析与跨系统融合,打造泛在互联的能源数据底座,助力企业实现全面智慧能源管理。
307 6
|
7月前
|
消息中间件 架构师 Java
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
美团面试:对比分析 RocketMQ、Kafka、RabbitMQ 三大MQ常见问题?
|
消息中间件 存储 RocketMQ
消息中间件-RocketMQ技术(二)
消息中间件-RocketMQ技术(二)
|
消息中间件 存储 中间件
消息中间件-RocketMQ技术(一)
消息中间件-RocketMQ技术(一)
|
安全 物联网 数据安全/隐私保护
物联网卡在应用于交通运输与物流中常见问题及解决建议
在交通运输与物流领域使用物联网卡期间,常见的问题主要包括网络连接、信号稳定性、设备管理、数据安全性以及套餐流量管理等方面。以下是对这些问题的详细分析和操作建议
|
消息中间件 弹性计算 Kubernetes
RabbitMQ与容器化技术的集成实践
【8月更文第28天】RabbitMQ 是一个开源消息代理和队列服务器,用于在分布式系统中存储、转发消息。随着微服务架构的普及,容器化技术(如 Docker 和 Kubernetes)成为了部署和管理应用程序的标准方式。本文将探讨如何使用 Docker 和 Kubernetes 在生产环境中部署和管理 RabbitMQ 服务,同时保证高可用性和弹性伸缩能力。
394 3
|
消息中间件 Cloud Native Serverless
RabbitMQ 与云原生技术的融合
【8月更文第28天】随着微服务架构和容器化的普及,云原生技术已成为构建现代应用的标准方式。云原生应用程序利用了诸如容器化、微服务、声明式API等技术,以提高可伸缩性、可靠性和可维护性。消息队列作为服务间通信的关键组件,在云原生环境中扮演着重要角色。本文将探讨如何将RabbitMQ与云原生技术(如Service Mesh和Serverless平台)相结合,并通过具体的代码示例来展示其集成方法。
203 2
|
8月前
|
SQL 大数据 数据库
RocketMQ实战—1.订单系统面临的技术挑战
本文详细分析了一个订单系统的设计与技术挑战。首先,介绍了订单系统的整体架构、业务流程及负载情况,包括电商购物流程、核心和非核心业务流程,以及真实生产中的负载压力。接着,探讨了系统面临的主要技术问题:支付后发券、发红包等操作导致性能下降;退款流程复杂且易失败;与第三方系统耦合带来的不稳定;大数据团队直接查询数据库影响性能;秒杀活动时数据库压力剧增等。最后,通过放大100倍压力的方法,梳理了高并发下的技术挑战,如核心链路优化、后台线程补偿机制、第三方系统解耦、数据获取方式改进等,为订单系统的优化提供了全面的参考。
RocketMQ实战—1.订单系统面临的技术挑战
|
运维 安全 物联网
采购物联网卡常见问题
在采购物联网卡(IoT SIM卡)时,企业和个人常常会遇到一系列问题,这些问题可能涉及卡的类型、服务质量、成本、兼容性、安全性及后续管理等多个方面。以下是一些常见问题及其操作建议:
|
监控 物联网 开发者
物联网卡使用过程中常见问题
在物联网(IoT)应用中,用户或开发者可能会遇到一些常见问题。以下是一些物联网卡应用中常用问题及其操作建议:

相关产品

  • 物联网平台