MQTT 学习

一、EMQX 安装使用

1. windows安装

官网下载对应压缩包 Download EMQX

ps:本地安装路径不能有空格,中文

进入emqx/bin 目录,运行emqx console后,会显示Erlang运行弹框

 网页端进入http://localhost:18083/#/,  若能成功进入,说明启动成功,不能进入,可能是18083端口被占用,修改 etc/plugins/emqx_dashboard.conf中的文件,修改对应端口,即可进入dashboard;

如果进入dashboard后显示 URL not found,是8081端口被占用,修改etc/plugins/emqx_management.conf 文件中的端口,即可成功登陆。

采用http插件认证授权,需要先在网页开启该插件,然后在plugins目录下,修改emqx_auth_http.conf文件中http接口的地址及端口。(还需关闭emqx.conf文件中的匿名登录)

2、docker安装

docker search emqx

docker pull emqx/emqx          拉取最新版的emqx

由于服务器的18083、1883端口未开,对应修改emqx_dashboard.conf和emqx.conf文件中的对应端口;

网页开启http插件,并修改配置文件中的请求http接口ip、端口、参数的修改。

由于启用了http认证,需要调用外部接口,所以在docker中不能以默认的bridge桥接网络模式启动,以--network host启动,将能访问宿主机网络(还有container网络模式及link链接方法)。

两个系统安装,都遇到bug,问题较多,但基本都是因为端口问题!!!

springcloud教程 -- 1.快速搭建入门级demo,看这一篇就够了_叶巨岩的博客-CSDN博客_springcloud

二、EMQX 5.0

1. 遗嘱消息(Will Message)

MQTT 遗嘱消息(Will Message)的使用 | EMQ

2. Keep Alive

MQTT 协议 Keep Alive 详解 | EMQ
Keep Alive:客户端发送心跳的间隔时间;
超时时间:客户端发送心跳到收到服务器对心跳响应的超时时间;
如果客户端在 Keep Alive 期间没有发送消息,那么其必须向代理者发送一个 PINGREQ 数据包,以确认当前代理者仍然可用;而代理者必须断开未发送消息或者 PINGREQ 数据包的客户端连接,断开连接时间是 Keep Alive 时间间隔的 1.5 倍。

3. Clean Start 、Session Expiry Interval

MQTT 5.0 新特性(四)Clean Start 与 Session Expiry Interval_EMQX的博客-CSDN博客_mqtt clean start

4. 设备上下线

设备上下线可以通过订阅系统的上下线主题,或者采用webhook桥接(以event上下线事件作为数据源)在接受上下线通知;两种方式建议采用订阅系统主题,更简洁方便;

5. Qos

Qos 0:最多一次

Qos 1:最少一次

Qos 2:只有1次

6. 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值