一、EMQ X介绍
EMQX 是一款高性能、分布式且针对物联网 (IoT) 场景优化的 MQTT 消息中间件。它由 EMQ Technologies 开发,支持大规模设备连接,并提供了丰富的功能集以满足现代 IoT 通信需求。
主要特点:
高性能与高并发:EMQX 能够处理数百万级别的并发连接,并能高效地路由和存储消息,尤其适合于设备密集型的物联网场景。 分布式部署与集群化:支持集群模式运行,能够通过多台服务器横向扩展服务能力,实现负载均衡和容错能力,确保在节点故障时服务不中断。 协议支持广泛:除了原生 MQTT 和 MQTT-SN,还支持 WebSocket、MQTT over WebSocket(WSS)、STOMP、AMQP、CoAP 等多种协议,便于不同客户端接入。 安全特性:EMQX 支持 SSL/TLS 加密传输,可以配置证书来启用 HTTPS 和 WSS,从而保护数据传输的安全性。同时,它提供了灵活的用户认证、ACL 访问控制以及基于角色的权限管理机制,确保只有经过验证的设备和服务才能进行消息发布和订阅。 插件系统与规则引擎:内置了可扩展的插件架构,允许用户根据需要添加自定义逻辑或集成第三方服务。规则引擎则可以在消息流经broker时实时处理和转换消息,例如转发到其他系统或数据库。 监控与管理工具:提供图形化的管理和监控界面,方便运维人员查看系统状态、管理连接设备、调试问题及执行维护操作。 持久化与存储后端集成:支持将消息持久化存储至多种数据库,如MySQL、MongoDB、Redis等,以满足不同的业务需求。
二、安装
2.1 下载压缩包
2.2 解压zip
image.png
2.3 启动EMQX
在 D:\software\emqx\emqx-5.3.2-windows-amd64\bin执行cmd 执行启动指令 emqx start
2.4 关闭EMQX
执行关闭指令 emqx stop
三、EMQX Dashboard
访问EMQX Dashboard
- 地址:http://localhost:18083/
- 账号/密码: admin/public
image.png
网络端口,如 MQTT 默认端口 1883 和用于加密连接的 8883(MQTT/TLS)以及 8083/8084(MQTT/WebSocket)
四、验证
通过 MQTTX 快速验证 MQTTX 是 EMQX 开源的一款跨平台 MQTT 5.0 客户端工具,它支持 macOS、Linux、Windows,并且支持自定义脚本模拟测试、MQTT 消息格式转换、日志记录等多个功能。您可通过 MQTTX 一键式的连接方式和图形界面,您可轻松测试 MQTT/TCP、MQTT/TLS、MQTT/WebSocket 连接。 本节讲介绍如何通过 MQTTX Web 端 快速验证 MQTT 连接,无需下载或安装任何程序。
-
访问 MQTTX Web 页面。
-
配置并建立 MQTT 连接。点击 + 新建连接 进入配置页面,您只需配置:
-
名称:连接名称,如 MQTTX_Test;
-
服务器地址
- 通过选择该连接的协议类型,如 WebSockets 协议,ws:// ;目前 MQTTX Web 端仅支持 WebSocket 协议,如希望测试 SSL/TLS 认证连接,请下载 MQTT 客户端;
- 填入之前获取的 EMQX 地址,如 emqx@127.0.0.1
-
端口:如 WebSockets 协议对应的 8083 端口其他项目保持默认配置,你也可以根据具体业务场景修改。有关页面字段的配置说明,可参考 MQTT 手册 - 快速建立连接。
-
-
配置完成后,点击页面右上角的连接按钮建立连接。
-
订阅相关主题。连接成功后即可快速订阅多个主题。点击页面中部的添加订阅按钮,按照默认配置,我们将订阅匹配 testtopic/# 主题的所有消息,QoS 等级为 0。您可多次重复该项操作以订阅不同主题,MQTTX Web 会通过不同颜色区分各主题。
-
测试消息的发送与接收。点击页面右下角聊天区域的发送按钮,可以在上方的聊天窗口中看到消息已成功发送。
image.png