阅读:3534回复:1
Windows下搭建MQTT服务器
Windows下搭建MQTT服务器
1、MQTT服务器软件筛选 2、MQTT服务器软件mosquitto下载 3、修改mosquitto配置,并启动mosquitto服务 4、利用mosquitto工具测试订阅与发布 5、可视化MQTT客户端工具MQTTX使用 1、MQTT服务器软件筛选 MQ遥测传输(MQTT)是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放、简单、轻量、易于实现。这些特点使它适用于低带宽受限环境。 特点包括以下: 使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合。 对负载内容屏蔽的消息传输。 使用TCP/IP提供网络连接。 小型传输,开销很小(固定长度的头部是2字节),协议交换最小化,以降低网络流量。 使用Last Will和Testament特性通知有关各方客户端异常中断的机制。 有三种消息发布服务质量: (1)“至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。 (2)“至少一次”,确保消息到达,但消息重复可能会发生。 (3)“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。 能够搭建MQTT服务器的软件有很多,比如: 1.mosquitto,Eclipse Mosquitto使用 C 语言实现的 MQTT 服务器。 2.EMQX,使用 Erlang 语言开发的 MQTT 服务器,内置强大的规则引擎,支持许多其他 IoT 协议比如 MQTT-SN、 CoAP、LwM2M 等。 3.Mosca,使用 Node.JS 开发的 MQTT 服务器,简单易用。 4.VerneMQ,使用 Erlang 开发的 MQTT 服务器。 本文是以mosquitto在windows下搭建过程为例进行介绍。 2、MQTT服务器软件mosquitto下载 1、进入mosquitto下载网址:https://mosquitto.org/download/,如下图: 2、点击上图中红框的链接进行下载,下载到本地计算机,如下图: 3、右键点击mosquitto-2.0.14-install-windows-x64.exe以管理员身份进行安装,如下图: 4、点击"Next >"按钮,如下图: 5、继续点击“Next >”按钮,如下图: 6、可以更改安装目录,我更改到D盘,点击“Install”按钮,如下图: 7、等待安装完毕,如下图: 8、点击"Finish"按钮,至此安装完成。 3、修改mosquitto配置,并启动mosquitto服务 1、安装完毕后,需要对配置文件进行修改,配置文件位置:D:\mosquitto\mosquitto.conf,如下: 2、这里我们主要是改一下侦听端口和开启用户验证(即设置用户名和密码) 2.1 修改侦听端口 打开mosquitto.conf,找到linstener,取消前面的#注释,并指定要侦听的端口,如下: listener 7788 2.2 设置用户名密码 2.2.1 找到找到allow_anonymous节点,这个节点作用是,是否开启匿名用户登录,默认是true。打开此项配置(将前面的 # 号去掉)之后将其值改为true 修改前:#allow_anonymous 修改后:allow_anonymous false 2.2.2 找到password_file节点,这个节点是告诉服务器你要配置的用户将存放在哪里。打开此配置并指定pwfile.example文件路劲(注意是绝对路劲) 修改前:#password_file 修改后:password_file D:\pwfile.example 我的电脑是: password_file C:\mqtt\mosquitto\pwfile.example 3、在管理工具->服务(右击任务栏"开始"按钮--选择"计算机管理"项-接着,展开左侧文件夹目录结构-鼠标双击"Server"项),中找到Mosquitto Broker,启动mosquitto服务,如下图: 4、以管理员身份打开CMD,并切换到d:/mosquitto目录下(我的电脑是C:/mqtt/mosquitto),运行以下命令添加用户名和密码: mosquitto_passwd.exe -c d:/pwfile.example admin 我的运行: mosquitto_passwd.exe -c C:\mqtt\mosquitto\pwfile.example admin 提示连续两次输入密码、创建成功。 命令解释: -c 创建一个用户、/etc/mosquitto/pwfile.example 是将用户创建到 pwfile.example 文件中、admin 是用户名。如下图: 注意: 输入密码时实际密码不显示,但已经输入了(例如我输入的是64222910) 添加用户和密码后,需要对mosquitto服务进行重启才能生效。 restart 4、利用mosquitto工具测试订阅与发布 再以管理员启动2个CMD窗口,并进入d:/mosquitto目录(cd C:\mqtt\mosquitto),cmd窗口1作为订阅者,cmd窗口2作为发布者,如下图: 在cmd窗口1中执行以下命令,进行消息订阅: mosquitto_sub.exe -h 127.0.0.1 -p 7788 -u admin -P 64222910 -v -t sensor 在cmd窗口2中执行以下命令,进行消息发送: mosquitto_pub.exe -h 127.0.0.1 -p 7788 -u admin -P 64222910 -t sensor -m "消息测试" mosquitto_pub.exe -h 211.143.252.204 -p 7788 -u admin -P 64222910 -t sensor -m "消息测试" 如下图: 5、可视化MQTT客户端工具MQTTX使用 MQTT的客户端测试工具有很多,而MQTTX无疑是其中的佼佼者,下面就介绍一下其使用过程。 1、首先从官网下载,MQTTX下载地址:https://github.com/emqx/MQTTX/releases 2、选择适合你操作系统的版本进行下载,如下图: 3、下载后如下图: 4、以管理员方式安装MQTTX-Setup-1.7.3.exe,如果出现Microsoft Defender SmartScreen阻止提示,则点击“仍要运行”,如下图: 5、安装步骤如下图: 6、安装过程中可以更改安装目录,如下图: 7、点击“安装”按钮,如下图: 8、安装完毕是会出现完成提示,如下图: 9、勾选运行MQTTX(R),点击“完成”按钮,则运行MQTTX,如下图: 10、点击“New Connection”按钮,则出现新建连接对话框,根据MQTT服务器的信息,输入对应的参数,如下图: 11、点击Connect按钮,如下图: 12、如果想订阅一个主题,则点击“New Subscription”按钮,则出现新建订阅对话框,如下图: 13、输入对应的主题后,点击“Confirm”按钮,如下图: 14、结合CMD窗口使用mosquitto_pub.exe发布工具发一个消息测试一下,如下图: 从上图中可以看出,订阅的主题已经接收到了测试的消息。 |
|
沙发#
发布于:2022-09-08 13:35
版权声明:本文为CSDN博主「CodingPioneer」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zlbdmm/article/details/125297796 |
|