#jitoa# 部署mqtt服务器—emqx 原创

sunqihan
发布于 2023-11-6 19:32
浏览
1收藏

本博客由 金陵科技学院-开放原子开源社-孙启涵 编写

1.前言

emqx是提及最多的开源免费mqtt服务器,部署简单
可以了解一下官方文档:emqx使用指南官方文档
学习一下mqtt的相关知识:https://www.emqx.com/zh/mqtt-guide#mqtt-basics

2.腾讯云部署emqx

笔者购买过一个腾讯云的服务器,所以在这里使用腾讯云部署emqx,这个服务器是centOS系统,emqx官方文档提供了有关于centOS部署的内容。
https://www.emqx.io/zh/downloads?os=CentOS
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区
还有Ubuntu等系统的部署方法。

2.1 配置 EMQX Yum 源

在centos命令行页面输入:

curl -s https://assets.emqx.com/scripts/install-emqx-rpm.sh | sudo bash

#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

2.2 安装 EMQX

在centos命令行页面输入:

sudo yum install emqx

#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区
2.3 启动 EMQX
在centos命令行页面输入:

sudo emqx start

#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区
出现sucessfully表示安装成功。

3.配置端口防火墙

要想外面能访问进来,还需要配置一些端口防火墙规则
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区
开放18083端口

firewall-cmd --add-port 18083/tcp --permanent

开放1883端口

firewall-cmd --add-port 18083/tcp --permanent

重启防火墙

systemctl restart firewalld

#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

接着打开浏览器,输入:

服务器ip地址:18083

跳转到如下页面:

#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

一开始的username是admin,password是public,登录上去之后会有修改username和password的提示。

点击访问控制中的客户端认证,添加username和password。
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

下面打开MQTTX。
MQTT 发布/订阅模式有 4 个主要组成部分:发布者、订阅者、代理和主题。
发布者(Publisher)
负责将消息发布到主题上,发布者一次只能向一个主题发送数据,发布者发布消息时也无需关心订阅者是否在线。
订阅者(Subscriber)
订阅者通过订阅主题接收消息,且可一次订阅多个主题。MQTT 还支持通过共享订阅的方式在多个订阅者之间实现订阅的负载均衡。
代理(Broker)
负责接收发布者的消息,并将消息转发至符合条件的订阅者。另外,代理也需要负责处理客户端发起的连接、断开连接、订阅、取消订阅等请求。
主题(Topic)
主题是 MQTT 进行消息路由的基础,它类似 URL 路径,使用斜杠 / 进行分层,比如 sensor/1/temperature。一个主题可以有多个订阅者,代理会将该主题下的消息转发给所有订阅者;一个主题也可以有多个发布者,代理将按照消息到达的顺序转发。
MQTT 还支持订阅者使用主题通配符一次订阅多个主题。更多关于 MQTT 主题的介绍可查看博客:通过案例理解 MQTT 主题与通配符。
MQTTX就是一个客户端。
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区
提供一下下载地址:https://www.emqx.com/zh/products/mqttx

打开MQTTX,点击新建连接。输入ip地址,username,password,点击connect。
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

下面我们来测试一下是否能够成功使用
输入topic和内容。
点击 + new subsription,订阅一下主题,然后发送消息,如果有回复,那么就可以成功使用了。
#jitoa# 部署mqtt服务器—emqx-鸿蒙开发者社区

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2023-11-6 19:38:12修改
3
收藏 1
回复
举报
回复
    相关推荐