如何搭建MQTT测试服务器

猿友 2020-08-13 11:37:28 浏览数 (5080)
反馈

这段时间有个同事在开发一款物联网硬件,这需要将采集的传输到客户的MQTT服务器上,不过目前还在调试阶段,连接到对方服务器测试的话很不方便,于是他就想要搭建一个MQTT测试服务器。在网上搜索了常用的MQTT代理服务器,最终决定采用ActiveMQ Artemis

ActiveMQ介绍

Apache ActiveMQ 是一款基于Java的消息服务器,支持多种协议可以使用CC++Python.Net等进行连接。ActiveMQ 官网介绍目前提供2个版本下载,ActiveMQ 经典版和ActiveMQ Artemis,其中Artemis为下一代高性能,非阻塞架构,基于事件驱动的消息系统。

ActiveMQ 经典版与Artemis对比

ActiveMQ Artemis 安装

为了测试方便我们将ActiveMQ Artemis部署在windows平台,我们在activemq官网下载apache-artemis-2.14.0-bin.zip ,目前最新版本为2.14.0 (July 20, 2020)

我们将下载的ZIP压缩包解压到D:\apache-artemis-2.14.0-boker。创建一个broker实例,实例需要新建一个文件夹F:\apache-artemis-2.14.0-boker,进入D:\apache-artemis-2.14.0-boker\bin目录执行(artemis create D:\apache-artemis-2.14.0-boker)创建broker实例,执行artemis create命令提示需要输入账号密码,按照提示输入即可。

创建成功后,执行artemis run启动broker实例。实例启动成功后,我们可以使用创建实例时输入的的账号密码登入管理面板。

ActiveMQ Artemis 管理面板

ActiveMQ Artemis 配置

我们可以修改MQTT的默认端口,配置文件位置:实例文件夹\etc\broker.xml <!-- MQTT Acceptor --> <acceptor name="mqtt">tcp://0.0.0.0:1883 我们将1883修改为我们需要的端口即可

修改管理面板WEB端口,配置文件位置:安装目录 \etc\bootstrap.xml <web bind="localhost:8161" path="web"> 默认端口8161修改为你想要的端口

MQTT客户端测试

我们使用通讯猫调试软件,订阅硬件发布的主题消息。

MQTT测试客户端

同事说能否自己弄一个简单的MQTT客户端,实时解析订阅收到的消息。客户端程序的话,用 C#winform写很方便,手撸一个MQTT客户端代码(使用MQTTnet)分分钟搞定。

.NET MQTT客户端

以上就是关于如何搭建MQTT测试服务器的相关介绍了,希望对大家有所帮助。

0 人点赞