一篇搞懂:EMQX 公共 Broker 的优势与 MQTTX 工具的使用方法
根据部署方式,MQTT Broker 消息代理服务器可以分为以下几种类型:
- 本地部署型
MQTT Broker:部署在本地服务器或私有数据中心内,用户拥有完全的控制权;适用于对数据隐私要求高或对外网依赖低的场景;需要自行管理和维护硬件及软件环境。常用的本地部署型MQTT Broker有Eclipse Mosquitto、EMQX、VerneMQ等 - 云托管型
MQTT Broker:部署在云服务提供商的平台上,用户无需管理底层硬件和基础设施;按需付费,适合需要弹性扩展和快速部署的场景,通常集成了云平台的其他服务,如数据存储、分析、安全等。常用的云托管型MQTT Broker有AWS IoT Core、Microsoft Azure IoT Hub、Google Cloud IoT Core、IBM Watson IoT Platform等。 - 混合部署型
MQTT Broker:结合了本地部署和云服务的优势,部分数据处理在本地完成,部分数据可通过云端同步;适用于需要边缘计算功能或对网络连接有高容错要求的场景。常用的混合部署型MQTT Broker有AWS Greengrass、Azure IoT Edge、EMQX Edge等。 - 嵌入式部署型
MQTT Broker:轻量级,专为资源受限的嵌入式系统设计,部署在物联网设备、网关或边缘设备上,通常用于局域网内的设备通信,适用于需要低延迟、本地处理和快速响应的物联网场景。常用的嵌入式部署型MQTT Broker有NanoMQ、Moquette、Eclipse Paho。
这里,我们将会使用 EMQ 提供的免费公共 MQTT Broker,该 Broker 是基于 EMQX Cloud 创建的,EMQX Cloud 是一个完全托管的 MQTT 云服务,提供高可靠性和可扩展的 MQTT 通信功能。我们使用 MQTTX 客户端软件连接 EMQ,打开 MQTTX,我们首先点击软件左侧加号创建一个客户端连接,步骤按照下图所示:

设置参数如下:
连接名称 Name:FreakStudioConnect
客户端ID Client ID:FreakStudioMQTTX
服务器地址 Host:mqtt://broker.emqx.io
端口 Port:1883
MQTT版本 MQTT Version:3.1.1
这里设置 Clean Session 为 True,表示客户端离线后重新上线,它将无法收到离线期间的消息。
出现如下界面,表示创建连接成功:

连接创建成功后,即可进入到连接的主界面,点击顶部连接名称旁的折叠按钮,可以展开并显示该配置的几个基础信息,快速修改该连接的常用配置,修改时需断开连接,重新点击连接后即可生效。在断开连接的状态下,也可点击右边配置按钮,进行更多的连接配置修改。


接下来,我们进行两个实验,在树莓派 Pico 上创建一个 MQTT 客户端,选择主题进行发布和订阅。
注意,进行 MQTT 客户端实验时,需要将 W5500 模块的网口连接到路由器上才可以正常运行。

1. **本地部署型 `MQTT Broker`****:**部署在本地服务器或私有数据中心内,用户拥有完全的控制权;适用于对数据隐私要求高或对外网依赖低的场景;需要自行管理和维护硬件及软件环境。常用的本地部署型 `MQTT Broker` 有 `Eclipse Mosquitto`、`EMQX`、`VerneMQ` 等
浙公网安备 33010602011771号