当前位置: 首页 > news >正文

超子说物联网-MQTT_笔记1---通过EMQX搭建MQTT服务器

B站超子说物联网——MQTT视频链接,视频讲解的非常详细👍👍👍

一、教程大纲

1.资料下载地址(百度网盘),提取码:n25a

2.教程内容

  • 使用EMQX在自己的电脑上搭建一个MQTT服务器;
  • 利用 网络调试助手 + MQTTX 对MQTT v3.1.1协议中的所有报文进行分析;

3.MQTT中文网

4.MQTT版本

  • MQTT 目前有 v3.1、 v3.1.1、 v5.0三个版本;
    • 3.1 版本(正式首个公开版本),2010 年作为 OASIS 标准发布,定义了标准化的协议结构(如报文格式、QoS 机制、会话管理),但在实际应用中仍暴露以下问题:
      • 客户端 ID 长度限制过严(23 字节),无法满足部分场景需求;
      • 错误码体系不完整,订阅失败时客户端无法明确原因;
      • 未明确 WebSockets 通信方式,跨平台兼容性有限;
      • 缺乏对匿名客户端的支持,灵活性不足;
    • 3.1.1版本(3.1 的改进版)
      • 2014 年发布,针对 3.1 的缺陷进行了系统性优化(如前文所述的 Session Present Flag、错误码扩展、客户端 ID 长度提升等),并成为物联网领域广泛应用的经典版本。
    • 5.0版本(重大升级)
      • 2019 年发布,在 3.1.1 基础上新增主题别名、共享订阅、消息属性等高级功能,提升协议的灵活性和扩展性 ;
      • v5.0在v3.1.1基础之上丰富和扩展了一些功能,但v5.0对服务器和物联网终端设备的开销比v3.1.1大很多,所以目前,v3.1.1使用的较为广泛
  • MQTT版本之间的兼容性问题
    • v3.1.1兼容v3.1;
    • v5.0不兼容v3.1.1(MQTT v5.0的所有报文结构都是重新实现的);

二、MQTT和TCP的关系以及MQTT工作的特点

1.MQTT与TCP的关系

在这里插入图片描述

  • MQTT是网络模型中应用层的协议;
  • TCP 是网络模型中传输层的协议;
  • MQTT协议是基于TCP协议的(我们基于EMQX建立的MQTT服务器本质上是一个TCP服务器);

2.MQTT的工作特点

  • 在MQTT中,不同客户端的数据交换需要通过服务器进行中转;
  • MQTT服务器对不同客户端之间的数据中转是基于Topic(主题)的订阅-发布的方式;
    在这里插入图片描述
    • 例如:客户端A向Topic B中发布数据,服务器只会向订阅Topic B的客户端转发数据;

三、EMQX搭建MQTT服务器,MQTTx、网络调试助手下载

1.EMQX搭建服务器

(1)下载安装Erlang/OTP;

  • Erlang/OTP下载链接,需要科学上网,可以在第一章中的资料下载中下载
    在这里插入图片描述
  • 安装
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

(2)EMQX的下载及解压

  • EMQX的下载链接,也可以使用资料中压缩包

在这里插入图片描述

  • 下载的是一个压缩包,解压压缩包(解压的路径中不能带有中文)
    在这里插入图片描述

(3)搭建EMQX服务器

  • 在上图文件夹中,按住shifit,同时在空白处按鼠标右键------>“在终端中打开”
    在这里插入图片描述

  • 在终端运行" bin\emqx start "
    在这里插入图片描述

  • 在浏览器的地址栏中输入"127.0.0.1:18083",在打开的页面输入默认用户名和密码(admin public)
    在这里插入图片描述

  • 修改登录密码
    在这里插入图片描述
    在这里插入图片描述

  • 客户端认证
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 创建用户
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2.Client ID与UserName、Password的关系

  • UserName(用户名)、Password(密码)是用来连接服务器的;
  • ClientID使用标识是哪一个连接通道;
  • 类似,我们的B站账号登录时,需要输入账号和密码,对应用户名和密码;而我们在手机端和电脑端都可以登录B站,ClientID就类似用来标识我们是在手机端登录还是电脑端登录(两个与客户端不同的连接通道);

3.MQTT客户端软件MQTTX下载

  • MQTTX下载链接
    在这里插入图片描述
  • 安装
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

4.网络调试助手下载(下载后不需要安装,双击即可打开)

  • 网络调试助手下载链接
    在这里插入图片描述
    在这里插入图片描述

相关文章:

  • FastAPI-MCP构建自定义MCP工具实操指南
  • 《一元线性回归:从基础到应用及模型处理》
  • 【Dify系列】【Dify 核心功能】【应用类型】【五】【工作流】
  • 包含30个APP客户端UI界面的psd适用于旅游酒店项目
  • VMware Workstation 添加PCI设备显卡直连
  • 深度学习入门知识
  • 信息学奥赛一本通 1541:【例 1】数列区间最大值
  • 把Cmakelist.txt转化为Qt Pro文件的方法
  • Vue3 跨多个组件方法调用:简洁实用的解决方案
  • Elasticsearch:什么是混合搜索?
  • 【大厂机试题解法笔记】字符串加密
  • 智慧流水线在ESOP数字工厂中的作用
  • leetcode146-LRU缓存
  • linux 下 Doris 单点部署
  • 【极客时间】大模型RAG进阶实战营毕业总结
  • 【AI大模型】Elasticsearch9 + 通义大模型实现语义检索操作详解
  • Java设计模式完整学习指南(23+4种模式)
  • semi-BATNet
  • 如何让 AI 接入自己的 API?我开发了一个将 OpenAPI 文档转为 MCP 服务的工具
  • 股指期货的多空策略是什么?
  • 界面做的最好的网站/网站推广seo教程
  • wordpress 目录层级/seo排名点击 seo查询
  • 档案网站建设网页/网络广告联盟
  • 可以做仿真实验的网站/自己做网站怎么做
  • 深圳网站制作首荐祥奔科技/刚出来的新产品怎么推
  • 汕头个人建站模板/汕头网站建设开发