【经验分享】如何搭建本地MQTT服务器(Windows ),并进行上下行调测
网上查了资料,实际动手的时候踩了很多坑,现在把我的经验分享给大家:
一、安装和启动
使用EMQTT,下载完直接到bin目录下执行emqttd start就可以了,简单方便
下载地址:https://www.emqx.io/cn/downloads#broker
大家下载2.X.X版本,不要下载最新版本,最新版本有修改,使用上述方法测试不通(也可能是本人使用的方法不对,如果有人测试过了可以悄悄告诉我 :)
打开http://127.0.0.1:18083/#/就可以进入dashboard界面,默认登录账号密码是admin/public,这个账号密码是在 安装目录\etc\plugins的emq_dashboard.conf中配置的:
Dashboard界面:
二、使用mqtt client进行测试
服务器搭好后就可以测试我们的client端了。本人搭建这个MQTT服务器是为了调测client端的代码。
在client端配置好服务器对接地址,端口是1883(MQTT非加密协议端口是1883),用户名和密码这时可以随便写,因为EMQTT默认不对用户名密码进行验证。
如果客户端和服务器在同一台机器上,那么serverIp_也可以设置为127.0.0.1
运行客户端程序后就可以在Dashboard看到publish的主题:
订阅的主题:
client端的数据上报成功了(Dashboard上没找到具体的数据,但从client端和dashboard上的主题和消息数量看是成功了),下一步就是从broker给我的client发消息了,这一步没在网上找到攻略或指导,是我自己尝试出来的...
进入Websocket页面,点击连接(不要修改上面的连接参数,直接点击连接即可):
当状态变成已连接后,在下面的消息中,修改主题,主题要使用client端订阅的主题之一(否则client收不到),修改消息内容和Qos(服务质量),点击发送即可
此时可以在client端收到消息:
如果要在Websocket客户端中看到我用代码写的客户端发的消息,可以在Websocket订阅我的client端发的消息主题:
当我的client端发送消息时就可以在下面的订阅消息列表中看到消息内容了:
MQTT的主体有三种角色:
这里的代理(Broker)就是我们搭建的EMQTT服务器,发布者和订阅者可以相互转换:
A发布消息,B订阅 <--> B发布消息,A订阅
上面的例子中有除了代理,还有两个角色,一个是我自己写的代码程序客户端,另一个是Dashboard上起的Websocket客户端,这两个客户端就是发布者和订阅者。
- 点赞
- 收藏
- 关注作者
评论(0)