技术分享
MQTT服务器(EMQX)部署
00 分钟
2025-7-18
2025-7-19
type
status
date
slug
summary
tags
category
icon
password
文章筛选

一、MQTT协议应用场景介绍

notion image
notion image
 
notion image
notion image

二、MQTT消息服务器本地部署

👁️
EMQX 是一款开源的高性能分布式 MQTT 消息中间件,专为物联网(IoT)场景设计,支持海量设备连接与实时数据移动。它基于 Erlang/OTP 平台开发,具备高并发、低延迟、高可用性等特性,被广泛应用于物联网、车联网、工业互联网等领域。
notion image

(一)、部署步骤

我们这里使用emqx-5.3.2开源版本,下方提供了windows系统的下载连接,其他系统去官网下载。
👁️
1、下载下方文件并解压
2、进入解压后的文件夹内,点击右键选择在终端打开
notion image
3、在命令行窗口输入以下命令用来启动emqx
输入后点击回车,出现Erlang要点及允许
notion image
4、通过浏览器访问 http://localhost:18083/ 通过浏览器访问 http://localhost:18083/(localhost 可替换为自己的实际 IP 地址)以访问 EMQX Dashboard 管理控制台,进行设备连接与相关指标监控管理。
默认用户名:admin 密码: public
按要求修改密码,我的修改后密码为:gongda01

(二)、测试EMQX是否可以正常使用

👁️
在控制台点击问题分析,选择该菜单下的WebSocket客户端,在连接配置点击连接,之后在订阅选项点击订阅,之后点击发布,若下方已接受和已发送都有内容,则EMQX服务器可以正常使用。
notion image
 

(三)、EMQX简单使用命令

启动服务
bin\emqx start
以后台守护进程方式启动
bin\emqx console
以前台模式启动,日志输出到终端
停止服务
bin\emqx stop
正常停止服务
bin\emqx restart
重启服务
👁️
bin\emqx console 这个命令的详细输出如下
notion image
  • 含义:EMQX 已成功启动以下服务监听:
    • 8883:MQTT 加密通信端口(SSL/TLS)。
      1883:MQTT 默认非加密端口。
      8083:WebSocket 协议的非加密端口。
      8084:WebSocket 协议的加密端口。
      18083:Web 管理界面(Dashboard)的 HTTP 端口。

(四)、两个 MQTTX 客户端通过 EMQX 服务器进行 MQTT 协议的发布/订阅通信

首先下载MQTTX客户端并进行安装

1. 启动 EMQX 服务

2. 配置 MQTTX 客户端

  • 客户端 A(发布者)
    • 连接配置:
      • 服务器地址:192.168.31.142(你的 EMQX 服务器 IP,本机IP地址)
      • 端口:1883(MQTT 默认端口,这是非加密端口,所以用户名和你面可以随便写)
      • 认证(如果启用):用户名/密码
      • notion image
  • 客户端 B(订阅者)
    • 连接配置:与客户端 A 相同。
      • notion image
    • 订阅主题:test/#

3. 测试通信

  1. 客户端 B 订阅主题
      • 在 MQTTX 中添加订阅,主题为 test/#
  1. 客户端 A 发布消息
      • 向主题 test 发送消息(如 i am aaaaa)。
  1. 客户端 B 接收消息
      • 客户端 B 应实时收到消息。
notion image

3. 如何启用认证

进入后台,选择客户端认证,进行添加用户名和密码进行认证,或选择其它方式的认证。
notion image
 

评论
  • Waline