论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
主机系统
›
linux
›
EMQX服务器的搭建,实现本地机和虚拟机之间的MQTT通讯( ...
EMQX服务器的搭建,实现本地机和虚拟机之间的MQTT通讯(详细教程) ...
王海鱼
金牌会员
|
2024-10-16 20:10:24
|
显示全部楼层
|
阅读模式
楼主
主题
895
|
帖子
895
|
积分
2685
前言
MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它实用范围非常广泛。
MQTT协议中有三种身份:发布者(Publish)、署理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息署理是服务器(EMQX),消息发布者可以同时是订阅者。MQTT协议的实现方式为:
本次实验通过搭建EMQX服务器,实现本地机和虚拟机之间的MQTT通讯。
准备工具
1.一台物理机,博主的物理机是Windows10
2.VMware
3.Ubuntu镜像
虚拟机的创建请参考这篇文章
Ubuntu的安装可以参考这篇文章
以上文中均有工具获取方式,大家可以自行网盘下载
虚拟机Ubuntu配置EMQX
我们打开Ubuntu的欣赏器,输入以下网址
https://www.emqx.com/zh/downloads-and-install/broker?os=Ubuntu
然后进入 EMQX 的下载页面,根据网站中提供的命令下载安装EMQX服务器
1:
配置EMQX Apt源
curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash
复制代码
如果是你的Ubuntu是刚安装上的,可能会提示你’curl’命令找不到,你可以根据它的提示安装curl
2:
安装EMQX
sudo apt-get install emqx
复制代码
3:
启动EMQX
3:登录EMQX服务器
Ubuntu上利用欣赏器访问emqx服务器(用户名admin;暗码:public)
访问地址
http://localhost:18083
登陆后会提示你修改暗码,测试用的暗码可以简单易记些
输入ifconfig查看Ubuntu的IP地址,在Ubuntu的EMQX服务器中输入Ubuntu的IP地址,点击连接即可
至此Ubuntu上的EMQX服务器就已经启动完成了,接下来配置物理机的服务器。
物理机连接EMQX服务器
这里先容两种方式去连接Ubuntu上的EMQX服务器
方式一(无需安装,直接解压利用)
链接:https://pan.baidu.com/s/1XaPkWTI_AtYmWVuMD8d5HQ?pwd=n99m
提取码:n99m
1:启动本地emqx
解压完成后我们找到bin目次,在该目次下可以新建一个cmd.bat文件,内里的内容是cmd.exe,这样我们就可以双击cmd.bat,打开命令提示行,便于操作。
双击cmd.bat文件,出现命令提示行,输入
emqx start
复制代码
没有报错并且返回了上一级目次说明启动乐成!接着测试下关闭服务
在当前目次下输入
cd bin
//返回上一级目录,在bin目录下输入
emqx stop
复制代码
弹出ok说明服务器可以正常启动关闭,我们emqx start
开启服务,然后在物理机欣赏器访问emqx服务器(用户名admin;暗码:public)
http://localhost:18083
登录后如果需要修改暗码,按要求修改即可;如果是英文界面,你可以设置成中文
2:连接Ubuntu的EMQX服务器
方式二(官网下载安装MQTTX工具)
1:下载MQTTX工具
官网地址
https://mqttx.app/zh/downloads
选择合适的版本即可,我这里用的是Windows64位
2:连接Ubuntu的EMQX服务器
下载后直接安装即可,安装步骤比较简单,基本都是下一步,在这里不再赘述。
Ubuntu终端输入ifconfig查看IP地址,然后将Ubuntu的IP地址输入到物理机的MQTTX工具中(条件是Ubuntu上的EMQX服务器已经配置好Ubuntu的IP地址了),点击连接即可。
以上两种方式均可实现连接EMQX服务器。接下来就可以通过修改订阅/发布 的主题进行通话啦!
互发消息测试
物理机上我们利用MQTTX工具进行配置,目前我的物理机上已经完成对Ubuntu的EMQX服务器的连接。
1:配置Ubuntu的EMQX服务器
打开Ubuntu服务器的客户端,Ubuntu上我们配置订阅主题为 PC(也就是物理机上的发布主题),点击订阅;Ubuntu发布主题为EMQX(也就是物理机上的订阅主题),点击发布。
2:配置物理机的MQTTX工具
物理机上我们同样打开客户端,物理机配置订阅主题为EMQX(也就是Ubuntu的发布主题),物理机发布主题我们修改为PC(也就是Ubuntu的订阅主题)。
此时在Ubuntu上点击发送,物理机上就可以收到主题为EMQX的信息,还可以用PC的主题发送给Ubuntu订阅的PC
别的还可以新建订阅
固然你也可以利用“物理机连接EMQX的方式一” 实现相互通讯
3:一点问题
发现在物理机新建订阅时,需要先删除物理机之前的订阅主题才能在物理机的MQTTX界面看到发送的消息(Ubuntu上发送给物理机的信息一直是可以收到并瞥见的,但是Ubuntu上一直是可以正常收发信息的。)不知道为什么,如有指点,非常感谢。
物理机删除之前订阅的主题后,在新订阅的主题对话框中可以正常看到收发的信息
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
王海鱼
金牌会员
这个人很懒什么都没写!
楼主热帖
如何在 Vue 3 中使用<script lang=“t ...
Vue 和 Django 前后端分离实践 (注册 ...
在Winform开发中,使用Async-Awati异步 ...
一条SQL的执行原理
go中 for循环的坑
C#依赖注入(直白明了)讲解 一看就会系 ...
教务管理系统——数据库课程设计mysql+ ...
2023大数据面试总结
clickhouse的稀疏索引
银河麒麟V10安装达梦数据库DM8 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表