【经验分享】如何搭建本地MQTT服务器(Windows ),并进行上下行调测

Lily_w 发表于 2019/09/24 14:56:32 2019/09/24
【摘要】 网上查了很多资料,实际动手的时候踩了很多坑,现在把我的经验分享给大家:一、安装和启动使用EMQTT,下载完直接到bin目录下执行emqttd start就可以了,简单方便下载地址:https://www.emqx.io/cn/downloads#broker大家下载2.X.X版本,不要下载最新版本,最新版本有修改,使用上述方法测试不通(也可能是本人使用的方法不对,如果有人测试过了可以悄悄告诉...

网上查了资料,实际动手的时候踩了很多坑,现在把我的经验分享给大家:

一、安装和启动

使用EMQTT,下载完直接到bin目录下执行emqttd start就可以了,简单方便

image.png

下载地址:https://www.emqx.io/cn/downloads#broker

大家下载2.X.X版本,不要下载最新版本,最新版本有修改,使用上述方法测试不通(也可能是本人使用的方法不对,如果有人测试过了可以悄悄告诉我 :)


打开http://127.0.0.1:18083/#/就可以进入dashboard界面,默认登录账号密码是admin/public,这个账号密码是在 安装目录\etc\plugins的emq_dashboard.conf中配置的:

image.png


Dashboard界面:

image.png


二、使用mqtt client进行测试

服务器搭好后就可以测试我们的client端了。本人搭建这个MQTT服务器是为了调测client端的代码。

在client端配置好服务器对接地址,端口是1883(MQTT非加密协议端口是1883),用户名和密码这时可以随便写,因为EMQTT默认不对用户名密码进行验证。

如果客户端和服务器在同一台机器上,那么serverIp_也可以设置为127.0.0.1

image.png

运行客户端程序后就可以在Dashboard看到publish的主题:

image.png

订阅的主题:

image.png

client端的数据上报成功了(Dashboard上没找到具体的数据,但从client端和dashboard上的主题和消息数量看是成功了),下一步就是从broker给我的client发消息了,这一步没在网上找到攻略或指导,是我自己尝试出来的...


进入Websocket页面,点击连接(不要修改上面的连接参数,直接点击连接即可):

image.png

当状态变成已连接后,在下面的消息中,修改主题,主题要使用client端订阅的主题之一(否则client收不到),修改消息内容和Qos(服务质量),点击发送即可

image.png

此时可以在client端收到消息

image.png


如果要在Websocket客户端中看到我用代码写的客户端发的消息,可以在Websocket订阅我的client端发的消息主题:

image.png

当我的client端发送消息时就可以在下面的订阅消息列表中看到消息内容了:

image.png


MQTT的主体有三种角色:

image.png


这里的代理(Broker)就是我们搭建的EMQTT服务器,发布者和订阅者可以相互转换:

A发布消息,B订阅 <--> B发布消息,A订阅


上面的例子中有除了代理,还有两个角色,一个是我自己写的代码程序客户端,另一个是Dashboard上起的Websocket客户端,这两个客户端就是发布者和订阅者。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。