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

一个网站建设域名的构思物联网技术主要学什么

一个网站建设域名的构思,物联网技术主要学什么,建设银行公积金网站提示udun,精品网站建设公司MQTT入门 1 MQTT概述 1.1 MQTT简介 MQTT#xff08;Message Queuing Telemetry Transport#xff09;由IBM于1999年开发的一种基于**发布订阅模式的轻量级的消息传输协议**#xff01; 发布订阅模式是一种传统的客户端-服务器架构的替代方案#xff0c;因为…MQTT入门 1 MQTT概述 1.1 MQTT简介 MQTTMessage Queuing Telemetry Transport由IBM于1999年开发的一种基于**发布订阅模式的轻量级的消息传输协议** 发布订阅模式是一种传统的客户端-服务器架构的替代方案因为一般传统的客户端-服务器是客户端能够直接和服务器进行通信完成消息的传输。发布订阅模式会将发送消 息的发布者publisher与接收消息的订阅者subscribers进行分离publisher与subscribers 并不会直接通信他们甚至都不清楚对方是否存在他们之间的交流由 第三方组件broker代理。 pub/sub 最重要的方面是 publisher 与 subscriber 的解藕这种耦合度有下面二个维度 1、空间解耦publisher 与 subscriber 并不知道对方的存在。 2、时间解藕publisher 与 subscriber 并不一定需要同时运行。 MQTT它在物联网应用中广受欢迎能够实现传感器、执行器和其它设备之间的高效通信。非常适用于资源受限的设备和低带宽、高延迟或不稳定的网络环境。 1.2 MQTT特性 它的主要特点包括 1、**轻量级**物联网设备通常在处理能力、内存和能耗方面受到限制。MQTT开销低、报文小的特点使其非常适合这些设备因为它消耗更少的资源即使在有限的能力下也 能实现高效的通信。 2、**可靠**物联网网络常常面临高延迟或连接不稳定的情况。MQTT支持多种QoS等级、会话感知和持久连接即使在困难的条件下也能保证消息的可靠传递使其非常适合 物联网应用。 3、**安全通信**安全对于物联网网络至关重要因为其经常涉及敏感数据的传输。为确保数据在传输过程中的机密性MQTT提供传输层安全TLS和安全套接层SSL 加密功能。此外MQTT 还通过用户名/密码凭证或客户端证书提供身份验证和授权机制以保护网络及其资源的访问。 4、**双向通信**MQTT的发布-订阅模式为设备之间提供了无缝的双向通信方式。客户端既可以向主题发布消息也可以订阅接收特定主题上的消息从而实现了物联网生态 系统中的高效数据交换而无需直接将设备耦合在一起。这种模式也简化了新设备的集成同时保证了系统易于扩展。 5、**语言支持**物联网系统包含使用各种编程语言开发的设备和应用。MQTT具有广泛的语言支持使其能够轻松与多个平台和技术进行集成从而实现了物联网生态系统中 的无缝通信和互操作性。常见编程语言的支持PHP、Node.js、Python、Golang、Node.js、java等。 1.3 MQTT核心概念 MQTT客户端 任何运行MQTT客户端库[MQTT开发工具包]的应用或设备都是MQTT客户端。例如使用MQTT的即时通讯应用是客户端使用MQTT上报数据的各种传感器是客户端各种MQTT 测试工具也是客户端。 MQTT Broker MQTT Broker是负责处理客户端请求的关键组件包括建立连接、断开连接、订阅和取消订阅等操作同时还负责消息的转发。一个高效强大的MQTT Broker能够轻松应 对海量连接和百万级消息吞吐量从而帮助物联网服务提供商专注于业务发展快速构建可靠的MQTT应用。 主题 MQTT主题本质上是一个UTF-8编码的字符串是MQTT协议进行消息路由的基础。可以理解为就是通过主题对消息进行分类。MQTT主题类似URL路径使用斜杠/进行分 层 chat/room/1 sensor/10/temperature为了避免歧义且易于理解通常不建议主题以/开头或结尾例如 /chat 或 chat/。MQTT主题不需要提前创建。MQTT 客户端在订阅或发布时即自动的创建了主题开 发者无需再关心主题的创建并且也不需要手动删除主题。 2 MQTT快速入门 2.1 EMQX概述 EMQX是一款实现了MQTT协议的开源的MQTT消息代理软件。MQTT定义了消息通讯的规则和流程而EMQX则是遵循这些规则的软件使得设备能够依据MQTT协议进行有 效通信。在新版本的EMQX中同时支持MQTT3.1.1协议和5.0协议。 官网地址https://www.emqx.com/zh 其他代理软件https://www.emqx.com/en/blog/the-ultimate-guide-to-mqtt-broker-comparison 2.2 EMQX部署 选择EMQX企业版进行部署https://docs.emqx.com/zh/enterprise/latest/deploy/install-docker.html 购买火山引擎服务器安装Docker # 移除旧版本docker sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 配置docker yum源。 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 安装 最新 docker sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 启动 开机启动docker enable start 二合一 systemctl enable docker --now# 配置加速 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json -EOF {registry-mirrors: [https://82m9ar63.mirror.aliyuncs.com] } EOF sudo systemctl daemon-reload sudo systemctl restart dockerdocker run -d --name emqx-enterprise \-p 1883:1883 -p 8083:8083 \-p 8084:8084 -p 8883:8883 \-p 18083:18083 \-v emqx_data:/opt/emqx/data \-v emqx_log:/opt/emqx/log \-v emqx_etc:/opt/emqx/etc \emqx/emqx-enterprise:5.6.1常见端口介绍 端口号说明1883TCP端口8083WebSocket端口8084WebSocket Secure 端口8883SSL/TLS 端口18083Broker的Dashboard访问端口号 2.3 Dashboard介绍 EMQX 提供了一个内置的管理控制台即 EMQX Dashboard。方便用户通过 Web 页面就能轻松管理和监控 EMQX 集群并配置和使用所需的各项功能。 主要功能 1、监控和管理EMQX中的相关信息与数据 支持查看运行中的EMQX集群的整体连接数订阅主题数消息收发数量和流入流出速率还包括节点列表和节点信息和一些系 统指标信息同时也可以对一些客户端连接与订阅数据进行查看与管理。 2、访问控制认证与授权管理 支持通过可视化的方式来新增和配置管理 EMQX 中的认证与授权机制。 3、数据集成 使用强大的基于SQL的规则引擎和数据桥或流量编辑器的可视化功能进行低代码数据处理和集成以帮助实时提取、过滤、丰富、转换和存储 MQTT 数据。 4、在线配置热更新支持在线修改和更新包括 MQTT、日志监听器等配置项更新成功后即刻生效。 首次访问 访问地址http://localhost:18083/ 用户名和密码admin/pubic 可以通过CLI的admins命令进行密码重置: ./bin/emqx ctl admins passwd Username Password2.4 EMQX客户端 2.4.1 MQTTX简介 MQTTX 是EMQX开源的一款跨平台 MQTT 5.0 客户端工具它支持 macOS, Linux 并且支持自定义脚本模拟测试、MQTT 消息格式转换、日志记录等多个功能。 MQTTX 包含三种类型的工具 1、MQTTX DesktopMQTTX Desktop是一款跨平台的 MQTT 桌面客户端工具。 2、MQTTX CLIMQTTX CLI是EMQ开源的一款 MQTT 5.0 命令行客户端工具 3、MQTT WebMQTTX Web是一款基于浏览器访问客户端工具。 官网地址https://mqttx.app/zh 2.4.2 MQTTX Desktop的使用 具体步骤 1、下载并安装MQTTX Desktop https://mqttx.app/zh/downloads?oswindows 2、新建链接 3、输入主题名称发送消息 4、创建新链接订阅主题 注意 1、发送消息的时候没有选择Retain那么在订阅该主题之前所发送的消息不能被客户端接收到 2、可以通过Dashboard来管理链接和订阅信息 2.2.3 MQTTX CLI的使用 具体步骤 1、下载MQTTX CLIhttps://mqttx.app/zh/downloads?oswindows 2、建立链接订阅主题 mqttx-cli-win-x64.exe sub -t test/1 -h 192.168.136.147 -p 1883 -v-t订阅主题 -h服务器地址填写对应监听器的IP地址默认为localhost -p服务器端口默认为1883 -v在接收到的Payload前显示当前Topic 3、向主题发送消息 mqttx-cli-win-x64.exe pub -t test/1 -q 0 -h 192.168.136.147 -p 1883 -m from MQTTX CLI2.2.4 MQTTX Web的使用 使用 MQTTX Web 进行测试操作基本上与使用MQTTX Desktop相同。 docker pull emqx/mqttx-web docker run -d --name mqttx-web -p 80:80 emqx/mqttx-web3 MQTT控制报文 3.1 控制报文简介 报文是网络中交换与传输的数据最小单元通俗来讲就是站点一次性要发送的数据块。它包含了将要发送的完整数据信息其长短不一致长度不限且可变。MQTT 客户端 和服务端通过交换控制报文来完成它们的工作比如订阅主题和发布消息。 3.2 常见的控制报文 MQTT 目前定义了 15 种控制报文类型如果按照功能进行分类我们可以将这些报文分为连接、发布、订阅三个类别 3.3 MQTT报文格式 在 MQTT 中无论是什么类型的控制报文它们都由固定报头、可变报头和有效载荷三个部分组成。 固定报头固定存在于所有控制报文中而可变报头和有效载荷是否存在以及它们的内容则取决于具体的报文类型。例如用于维持连接的 PINGREQ 报文就只有一个固定报 头用于传递应用消息的 PUBLISH 报文则完整地包含了这三个部分。 3.3.1 固定报头 固定报头由报文类型、标识位和报文剩余长度三个字段组成。 报文类型 占4个bit位是一个无符号的整数 常见的报文类型https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901022 标识位 占4个bit位不过到 MQTT 5.0 为止只有 PUBLISH 报文的这四个比特位被赋予了明确的含义 1、Bit 3DUP表示当前 PUBLISH 报文是否是一个重传的报文。 2、Bit 2,1QoS表示当前 PUBLISH 报文使用的服务质量等级。 3、Bit 0Retain表示当前 PUBLISH 报文是否是一个保留消息。 其他所有的报文中这 4 位都仍是保留的。 剩余长度 剩余长度指示了当前控制报文剩余部分的字节数也就是可变报头和有效载荷这两个部分的长度。MQTT 控制报文的总长度 固定报头的长度 剩余长度。 3.3.2 可变报头 可变报头的内容取决于具体的报文类型。 举例 1、CONNECT 报文的可变报头按顺序包含了协议名、协议级别、连接标识、Keep Alive 和属性这五个字段 2、PUBLISH 报文的可变报头则按顺序包含了主题名、报文标识符和属性这三个字段。 属性是 MQTT 5.0 引入的一个概念。属性字段基本上都是可变报头的最后一部分由属性长度和紧随其后的一组属性组成这里的属性长度指的是后面所有属性的总长度 所有的属性都是可选的因为它们通常都有一个默认值如果没有任何属性那么属性长度的值就为0。属性通常都是为了某个专门的用途而设计的不同的报文所支持的属 性都是不一样的具体的对应情况可以查看官网地址https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901027 3.3.3 有效载荷 有效载荷是用于实现对应报文的核心功能。 1、在 PUBLISH 报文中Payload 用于承载具体的应用消息内容这也是 PUBLISH 报文最核心的功能。 2、在 SUBSCRIBE 报文中Payload 包含了想要订阅的主题以及对应的订阅选项这也是 SUBSCRIBE 报文最主要的工作。 3.4 报文验证 接下来我们通过Wireshark工具抓取一下各种通讯操作所涉及到的报文。 链接相关报文验证: 发布相关报文: 上述发布的消息QoS的值设置为0因此看不到发布消息的时候的其他的报文数据如果此时把消息的QoS等级设置为1、2就可以看到发送消息的时候其他的报文 QoS的值设置为2以后抓取的报文数据如下所示 订阅相关报文
http://www.w-s-a.com/news/200506/

相关文章:

  • 旅游网站制作建设华大基因 网站建设
  • sem推广竞价托管南京seo网站优化
  • 网站优化网站建站教程网站建设 成都
  • 网站 配色表html代码在线
  • 城乡和建设部建造师网站众筹平台网站建设
  • 外贸网站模板免费下载微网站制作软件
  • 一个新的网站怎么做宣传技术先进的网站建
  • 福建网站建设有限公司需求网站
  • 生物科技企业网站做的比较好的企业培训网站模板
  • 南京 高端网站建设网站备案密码怎么找回
  • 蛋糕店网站模板建设电子商务系统网站
  • 海口网站建设优化公司网站开发要加班吗
  • 建设一个网站需要注意哪些要求群晖的网站开发
  • 精通网站开发阅读网页视频下载慢怎么办
  • 网站标题的选择巴音郭楞库尔勒网站建设
  • 成都市网站建设服务商怎么进网站后台管理系统
  • 企业网站站内优化30岁做网站编辑
  • 与安网站建设网站建设征求意见稿
  • 学校网站推广做网站手把手
  • 网站开发遇到的难题wordpress文章调用
  • 网站建设做的好在线logo免费设计生成器标智客
  • 郑州做网站齿轮网站排名怎么做 site
  • 船员专用网站开发建议wordpress 图片占用id
  • 桌面软件开发跟网站开发那个上海网站备案在哪里查询
  • 罗湖网站建设陕西省建设网官网住房和城乡厅官网
  • 做一个网站的详细教学wordpress 忘记用户名密码
  • 建设银行的网站是多少wordpress添加新页面跳转
  • 网站设计费用抓取网站访客qq号码
  • 驾校视频网站模板郑州网站建设价格
  • 上海 有哪些做网站的公司成都企业网站备案流程