CN113709263A - 一种物联网协议mqtt的数据接入方法、计算机及存储介质 - Google Patents
一种物联网协议mqtt的数据接入方法、计算机及存储介质 Download PDFInfo
- Publication number
- CN113709263A CN113709263A CN202111281855.2A CN202111281855A CN113709263A CN 113709263 A CN113709263 A CN 113709263A CN 202111281855 A CN202111281855 A CN 202111281855A CN 113709263 A CN113709263 A CN 113709263A
- Authority
- CN
- China
- Prior art keywords
- theme
- node
- message
- consumption
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/567—Integrating service provisioning from a plurality of service providers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种物联网协议MQTT的数据接入方法、计算机及存储介质,属于物联网协议数据接入技术领域。在云端部署分布式MQTT服务节点,边缘计算网关向代理节点发送数据接入请求消息;平台接收代理节点发送的数据请求接入消息;代理节点为物联网设备和平台接入、代理的发布订阅主题规范;物联网设备拟进行信息交互时,向代理节点发送数据接入请求消息,代理节点收到请求内容后,将接入的数据转发至平台;拟进行信息交互的平台,根据协议类型选择对应的多个发布消息多生产节点发送请求消息至服务器代理节点;解决了现有技术中单节点服务器在应用端消费不及时产生的交互延迟,消息积压的技术问题。
Description
技术领域
本申请涉及一种数据接入方法,尤其涉及一种物联网协议MQTT的数据接入方法、计算机及存储介质,属于物联网协议数据接入技术领域。
背景技术
在物联网领域,在硬件性能低下的远程设备以及网络状况糟糕的情况下将机器、设备产生的数据安全、可靠、高效的与云端服务器交互,就需要引入MQTT协议以及其中间件。随着物联网设备的增加,将产生海量的数据,如何在兼顾稳定、可靠与海量数据接入方面成了一个不可忽视的问题。
目前较为主要的物联网设备接入控制方法包括:云端服务器基于桥接的模式实现伪集群,应用层单消费,单生产节点的模式实现数据的接入以及平台的控制。上述方案中,随着设备的增加,单节点服务器本身就会成为瓶颈,同时应用端消费的不及时也会造成交互的延迟,消息积压,也会给服务器造成压力。
为解决这一问题,本发明提出一种物联网协议MQTT的数据接入方法,通过中间件集群、多层级主题拆分设置、消费实例相互监督、多消费实例的方式实现该解决方案。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
鉴于此,本发明为了解决现有技术中单节点服务器在应用端消费不及时产生的交互延迟,消息积压的技术问题,本发明提供了一种物联网协议MQTT的数据接入方法,包括以下步骤:
S1、在云端部署分布式MQTT服务节点,相互之间注册服务成为代理节点;
S2、边缘计算网关在准备入网阶段,设置区域ID、网关ID以及MQTT服务器节点;
S3、边缘计算网关在入网阶段,通过数据来源层主题准入规则与代理节点发送数据接入请求消息,并在代理节点中注册设备信息;
S4、代理节点为物联网设备和平台接入、代理的发布订阅数据来源层主题准入规则;
S5、平台通过数据来源层主题准入规则与代理节点发送的数据请求接入消息,并在代理节点中注册设备信息;
S6、上行通讯中,物联网设备拟进行消息交互时,物联网设备向代理节点发送数据接入请求消息,代理节点收到请求内容后,将接入的数据转发至平台;
S7、平台选择不同层级主题多个消费端节点消费数据,存储至数据库或第三方平台;
S8、消费完成后发送应答消息至代理节点,代理节点将应答消息转发至物联网设备,实现应答消息闭环;
S9、下行通讯中,平台拟进行消息交互时,根据协议类型选择对应的多个发布消息多生产节点发送请求消息至代理节点;
S10、代理节点根据主题类型将消息转发至物联网设备;
S11、物联网设备在接收到消息后,选择不同层级主题消费端消费数据,消费成功后发送应答消息至服务器代理节点;
S12、服务器代理节点将应答消息转发至平台,实现应答消息闭环。
优选的,S1所述在云端部署分布式MQTT服务节点,相互之间注册服务成为代理节点的具体方法是,使用三节点模式部署分布式MQTT服务节点,具体为使用mosquitto搭建分布式集群节点,每一个已注册的物联网设备关联一个服务器代理节点,物联网设备与当前代理节点通讯,能够切换至其他代理节点;其中mosquitto为MQTT服务器的一种中间件代理。
优选的,S2所述边缘计算网关在准备入网阶段,设置区域ID、网关ID以及MQTT服务器节点的具体方法是,区域ID按照行政区域和区域编码组成,网关ID为平台全局唯一值设备。
优选的,S4所述代理节点为物联网设备和平台接入、代理的发布订阅数据来源层主题准入规则的具体方法是,以/#结尾,使客户端具备在数据来源层级主题基础上扩展到消息类型层级主题的能力。
优选的,S6所述物联网请求设备向代理节点发送数据接入请求消息的具体方法是,包括以下步骤:
S61、创建消息类型层级主题列表;消息类型层级主题列表具体包括消息类型层级主题;
S62、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S63、根据S61所述的主题列表创建生产主题,生产主题具体包括,消息类型层级主题;
S64、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息传递时的可靠程度;
S65、根据S61至S64生成生产节点,当消息类型层级主题列表还有未生成生产节点,重复S61至S64,直到生成所有生产节点,所有生产节点组成消息类型层级主题生产端;
S66、物联网设备向代理节点发送数据时,使用消息类型层级主题生产节点生产数据。
优选的,S7所述平台选择不同层级主题多个消费端节点消费数据的具体方法是,包括以下步骤:
S71、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和消息类型层级主题;
S72、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S73、根据S71所述的主题列表创建消费主题,消费主题具体包括,区域层级主题和消息类型层级主题;
S74、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S75、设置终端掉线通知消息,每一个节点都设置掉线通知;
S76、检查消费节点是否掉线,若消费节点掉线,触发邮件告警,若消费节点未掉线执行下一步骤;
S77、根据S71至S76生成多消费节点,当多消息类型层级主题列表还有未生成消费节点,重复S71至S76,直到生成所有消费节点,所有消费节点组成多消息类型层级主题消费端;
S78、判断消费主题是否为区域级别主题,若消费主题为区域层级别主题,则使用区域层级消费节点消费数据;若消息主题为消息类型层级主题,则使用消息类型层级主题消费节点消费数据。
优选的,S9所述根据协议类型选择对应的多个发布消息多生产节点发送请求消息至服务器代理节点的具体方法是,包括以下步骤:
S91、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和网关层级主题;
S92、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S93、根据S91所述的主题列表创建生产主题,生产主题具体包括,区域层级主题和网关层级主题;
S94、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息传递时的可靠程度;
S95、根据S91至S94生成多生产节点,当多消息类型层级主题列表还有未生成生产节点,重复S91至S96,直到生成所有生产节点,所有生产节点组成多消息类型层级主题生产端;
S96、判断生产主题是否为区域级别主题,若生产主题为区域层级别主题,则使用区域层级生产节点生产数据;若生产主题为网关层级主题,则使用消网关层级主题生产节点生产数据。
优选的,S11所述选择不同层级主题消费端消费数据的具体方法是,包括以下步骤:
S111、构造生产节点中涉及到构造可复用的连接工厂,使多消费端可以共用一个连接实例;
S112、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S113、根据S111至S112生成生产节点,当生产节点列表还有未生成生产节点,重复S111至S112直到生成所有生产节点;
S114、注入轮训规则,使生产节点以轮训方式生产平台发送的数据到代理代理节点;
S115、创建消费主题,消费主题包括,区域层级主题和网关层级主题;根据区域生成区域层级主题,根据具体的网关ID生成网关层级主题;
S116、判断消费主题是否区域层级主题;若消费主题为区域层级别主题,则使用区域层级生产节点发送数据;若消费主题层级为网关ID层级主题,则使用网关层级主题多生产节点发送消息,使用S114所述的注入轮训规则发送消息;直至消息列表里的消息全部发送完成。
一种计算机,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现一种物联网协议MQTT的数据接入方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种物联网协议MQTT的数据接入方法。
本发明的有益效果如下:本发明作为一种去中心化的分布式的接入方案,使用集群分担多设备生产消费数据压力,扩大设备数据接入量。对物联网设备接入主题进行优化,定义具体到单一设备消息级别主题,为应用层按照单一消息级别进行多实例消费。解决海量数据接入问题,同时可以根据不同地区数据密度动态伸缩部署服务器,节约服务器资源,提高服务的可靠性、可维护性。解决了现有技术中单节点服务器在应用端消费不及时产生的交互延迟,消息积压的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例所述方法流程示意图;
图2为本发明实施例所述方法结构示意图;
图3为本发明实施例所述发布订阅多层级主题结构示意图;
图4为本发明实施例所述平台多消费节点流程示意图;
图5为本发明实施例所述平台多生产节点流程示意图。
具体实施方式
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例1、参照图1至图5,说明本实施方式,本实施例的一种物联网协议MQTT的数据接入方法,具体包括多个物联网设备,多个接入MQTT服务器代理,平台多个消费节点,平台多个生产节点,一份发布与订阅的通用主题规范。具体参照图2,其中:
物联网设备:需要连接到云端的设备,可以是传感器设备,也可以是一个独立的可运行的终端。
服务器代理节点:主要职责是接受发布者发布的所有消息,并将其过滤后分发给不同的消息订阅者。
平台:运行于基础设施层之上的一个以软件为核心,为应用服务提供开发、运行和管控环境。
边缘计算网关:以边缘计算为核心,在靠近物或数据源头的网络边缘侧,进行网络融合、数据采集、计算、存储和应用的分布式计算节点设备。
发布订阅主题规范:定义物联网设备和平台确定接入、代理的发布订阅主题规范。
本申请所述的数据接入、代理的发布订阅主题规范,此规范中包含一个MQTT服务器代理集群,一份客户端的发布者与订阅者主题规范,一份服务器代理集群的发布者与订阅者主题规范。参照图3,其中:
server:数据来源层,数据发送者为平台;
client:数据来源层,数据发送者为物联设备;
regionId:区域id,按照4位行政区域代码和2位区编码组成;
gatewayId:边缘计算网关id;
category:消息类型,具体到某种设备上传类型数据,比如井盖上报数据,智能电源上报数据;
客户端:接入MQTT服务器代理集群的设备统称为客户端,图2包括物联网设备、平台;
MQTT服务器代理集群:一种物联网协议的集群搭建方式的消息转发代理节点;
主题:代理服务器设置数据来源准入主题,使用#限定左侧字符串开头的主题才能准入进行代理;
多层级主题:以左斜划线为层级识别标志位,一个左斜划线代表一层级,图2最多为四层级主题。
一种物联网协议MQTT的数据接入方法,包括以下步骤:
S1、在云端部署分布式MQTT服务节点,相互之间注册服务成为服务器代理节点;
具体的,在云端使用三节点模式部署分布式MQTT服务节点,具体为使用mosquitto搭建分布式集群节点,每一个已注册的物联网设备关联一个服务器代理节点,物联网设备与当前代理节点通讯,能够切换至其他代理节点;其中mosquitto为MQTT服务器的一种中间件代理。
S2、边缘计算网关在准备入网阶段,设置区域ID、网关ID以及MQTT服务器节点;
具体的,区域ID按照行政区域和区域编码组成,网关ID为平台全局唯一值设备。
S3、边缘计算网关在入网阶段,通过认证规则注册向服务器代理节点发送数据接入请求消息,并在服务器代理节点中注册设备信息;
具体的,边缘计算网关通过数据来源层主题准入规则注册向服务器代理节点发送数据接入请求消息,实现物联网设备的数据接入请求;具体包括:
a)动态拼接发布主题函数:根据对接的具体设备协议类型动态构造多层级主题,实现不同类型设备,不同主题进行通讯。
b)物联网协议动态发布主题和内容函数:根据动态拼接发布主题函数构造的主题向服务器代理发送消息。
c)物联网协议通用消费函数:按照通用主题进行消费的函数,通用主题为层级到区域的主题,此为广播通讯模式。
d)物联网协议特定消费函数:按照网关设备唯一值ID主题进行消费的函数,此为点对点通讯模式。
S4、代理节点为物联网设备和平台接入、代理的发布订阅主题规范;
具体的,服务器代理节点设置发布与订阅的通用主题,通用主题设置第一层主题并以/#结尾,使客户端具备在通用主题下拼接自定义点对点主题的能力。
具体的,服务器代理节点设置发布与订阅的数据来源层主题,对订阅与发布的主题进行准入限制。以/#结尾,使客户端具备在数据来源层级主题基础上扩展到消息类型层级主题的能力。
S5、平台通过数据来源层主题准入规则与代理节点发送的数据请求接入消息,并在代理节点中注册设备信息;
具体的,平台通过数据来源层主题准入规则注册接收服务器代理节点发送的数据请求接入消息,用于实现平台的数据发布;具体包括:
a)动态拼接发布主题函数:根据对接的具体设备协议类型动态构造多层级主题,实现广播通讯主题构造和点对点通讯主题构造。
b)物联网协议动态发布主题和内容函数:根据动态拼接发布主题函数构造的主题向服务器代理发送消息。
c)物联网协议通用消费函数:按照通用主题进行消费的函数,通用主题为层级到区域的主题,此为广播通讯模式。
d)物联网协议特定消费函数:按照网关设备唯一值ID主题进行消费的函数,此为点对点通讯模式。
S6、上行通讯中,物联网设备(边缘计算网关)拟进行信息交互时,物联网请求设备向代理节点发送数据接入请求消息,代理节点收到请求内容后,将接入的数据转发至平台;
具体的,物联网设备根据对接的具体消息类型调用动态拼接多消息层级主题函数以及发布主题和内容函数发布数据接入请求消息至服务器代理节点。
具体的,物联网请求设备向代理节点发送数据接入请求消息的具体方法是,包括以下步骤:
S61、创建消息类型层级主题列表;消息类型层级主题列表具体包括消息类型层级主题;
S62、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S63、根据S61所述的主题列表创建生产主题,生产主题具体包括,消息类型层级主题;
S64、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息传递时的可靠程度;消息服务质量等级,可参照MQTT协议5.0-服务质量等级和协议流程Quality of Service levels and protocol flows。
65、根据S61至S64生成生产节点,当消息类型层级主题列表还有未生成生产节点,重复S61至S64,直到生成所有生产节点,所有生产节点组成消息类型层级主题生产端;
S66、物联网设备向代理节点发送数据时,使用消息类型层级主题生产节点生产数据。
S7、平台根据不同的主题定义,选择对应的多消费节点消费数据,存储至数据库或第三方平台;
具体的,平台根据订阅者的层级主题类型,选择订阅者层级到区域或者到消息类型的消费节点消费数据,存储至数据或第三方平台。
具体的,平台选择不同层级主题多个消费端节点消费数据的方法是,包括以下步骤:
S71、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和消息类型层级主题;
S72、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S73、根据S71所述的主题列表创建消费主题,消费主题具体包括,区域层级主题和消息类型层级主题;
S74、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S75、设置终端掉线通知消息,每一个节点都设置掉线通知;
S76、检查消费节点是否掉线,若消费节点掉线,触发邮件告警,若消费节点未掉线执行下一步骤;
S77、根据S71至S76生成多消费节点,当多消息类型层级主题列表还有未生成消费节点,重复S71至S76,直到生成所有消费节点,所有消费节点组成多消息类型层级主题消费端;
S78、判断消费主题是否为区域级别主题,若消费主题为区域层级别主题,则使用区域层级消费节点消费数据;若消息主题为消息类型层级主题,则使用消息类型层级主题消费节点消费数据。
S8、消费完成后发送应答消息至代理节点,代理节点将应答消息转发至物联网设备,实现应答消息闭环;
具体的,平台订阅者根据设置最少发送一次消息服务质量等级进行应答。
S9、下行通讯中,拟进行信息交互的平台,根据协议类型选择对应的多个发布消息多生产节点发送请求消息至服务器代理节点;
具体的,拟进行信息交互的平台,根据对接的消息类型调用生产节点策略选择函数,选择对应的生产节点,之后调用动态拼接多消息层级主题函数拼装下行主题,调用发布主题和内容函数发布消息至服务器代理节点。
具体的,根据协议类型选择对应的多个发布消息多生产节点发送请求消息至服务器代理节点的方法是,包括以下步骤:
S91、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和网关层级主题;
S92、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S93、根据S91所述的主题列表创建生产主题,生产主题具体包括,区域层级主题和网关层级主题;
S94、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息传递时的可靠程度;
S95、根据S91至S94生成多生产节点,当多消息类型层级主题列表还有未生成生产节点,重复S91至S96,直到生成所有生产节点,所有生产节点组成多消息类型层级主题生产端;
S96、判断生产主题是否为区域级别主题,若生产主题为区域层级别主题,则使用区域层级生产节点生产数据;若生产主题为网关层级主题,则使用消网关层级主题生产节点生产数据。
S10、代理节点根据主题类型将消息转发至物联网设备;
S11、物联网设备在接收到消息后,选择不同层级主题消费端消费数据,消费成功后发送应答消息至服务器代理节点;
具体的,物联网设备在接收到消息后,物联网设备根据消息类型,调用物联网协议消费函数实现广播通讯消费或者平台对网关点对点通讯消费。
具体的,选择不同层级主题消费端消费数据的方法是,包括以下步骤:
S111、构造生产节点中涉及到构造可复用的连接工厂,使多消费端可以共用一个连接实例;
S112、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S113、根据S111至S112生成生产节点,当生产节点列表还有未生成生产节点,重复S111至S112直到生成所有生产节点;
S114、注入轮训规则,使生产节点以轮训方式生产平台发送的数据到代理代理节点;
S115、创建消费主题,消费主题包括,区域层级主题和网关层级主题;根据区域生成区域层级主题,根据具体的网关ID生成网关层级主题;
S116、判断消费主题是否区域层级主题;若消费主题为区域层级别主题,则使用区域层级生产节点发送数据;若消费主题层级为网关ID层级主题,则使用网关层级主题多生产节点发送消息,使用S114所述的注入轮训规则发送消息;直至消息列表里的消息全部发送完成。
S12、服务器代理节点将应答消息转发至平台,实现应答消息闭环。
实施例中名词解释如下:
MQTT(Development Management Platform)消息队列遥测传输的缩写,是 IBM 开发的一个即时通讯协议,它比较适合于在低带宽、不可靠的网络的进行远程传感器和控制设备通讯等。该协议基于发布 / 订阅范式的 “轻量级” 消息协议(头部 2 字节),专为资源受限的设备、低带宽占用高延时或者不可靠的网络设计,适用于 IOT 与 M2M。基于 TCP/IP 协议栈,为事实的 IOT 通讯的标准协议。
物联网(Internet of Things,简称IOT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化 学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
5G(5th Generation Mobile Communication Technology 简称5G)第五代移动通信技术的缩写,具有高速率、低时延和大连接特点的新一代宽带移动通信技术,是实现人机物互联的网络基础设施。
物联网设备(Client)前端需要连接到云端的设备,可以是传感器设备,也可以是一个独立的可运行的终端。
本发明的计算机装置可以是包括有处理器以及存储器等装置,例如包含中央处理器的单片机等。并且,处理器用于执行存储器中存储的计算机程序时实现上述的基于CREO软件的可修改由关系驱动的推荐数据的推荐方法的步骤。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
计算机可读存储介质实施例:
本发明的计算机可读存储介质可以是被计算机装置的处理器所读取的任何形式的存储介质,包括但不限于非易失性存储器、易失性存储器、铁电存储器等,计算机可读存储介质上存储有计算机程序,当计算机装置的处理器读取并执行存储器中所存储的计算机程序时,可以实现上述的基于CREO软件的可修改由关系驱动的建模数据的建模方法的步骤。
所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种物联网协议MQTT的数据接入方法,其特征在于,包括以下步骤:
S1、在云端部署分布式MQTT服务节点,相互之间注册服务成为代理节点;
S2、边缘计算网关在准备入网阶段,设置区域ID、网关ID以及MQTT服务器节点;
S3、边缘计算网关在入网阶段,通过数据来源层主题准入规则与代理节点发送数据接入请求消息,并在代理节点中注册设备信息;
S4、代理节点为物联网设备和平台接入、代理的发布订阅数据来源层主题准入规则;
S5、平台通过数据来源层主题准入规则与代理节点发送的数据请求接入消息,并在代理节点中注册设备信息;
S6、上行通讯中,物联网设备拟进行消息交互时,物联网设备向代理节点发送数据接入请求消息,代理节点收到请求内容后,将接入的数据转发至平台;
S7、平台选择不同层级主题多个消费端节点消费数据,存储至数据库或第三方平台;
S8、消费完成后发送应答消息至代理节点,代理节点将应答消息转发至物联网设备,实现应答消息闭环;
S9、下行通讯中,平台拟进行消息交互时,根据协议类型选择对应的多个发布消息多生产节点发送请求消息至代理节点;
S10、代理节点根据主题类型将消息转发至物联网设备;
S11、物联网设备在接收到消息后,选择不同层级主题消费端消费数据,消费成功后发送应答消息至服务器代理节点;
S12、代理节点将应答消息转发至平台,实现应答消息闭环。
2.根据权利要求1所述的方法,其特征在于,S1所述在云端部署分布式MQTT服务节点,相互之间注册服务成为代理节点的具体方法是,使用三节点模式部署分布式MQTT服务节点,具体为使用mosquitto搭建分布式集群节点,每一个已注册的物联网设备关联一个服务器代理节点,物联网设备与当前代理节点通讯,能够切换至其他代理节点;其中mosquitto为MQTT服务器的一种中间件代理。
3.根据权利要求2所述的方法,其特征在于,S2所述边缘计算网关在准备入网阶段,设置区域ID、网关ID以及MQTT服务器节点的具体方法是,区域ID按照行政区域和区域编码组成,网关ID为平台全局唯一值设备。
4.根据权利要求3所述的方法,其特征在于,S4所述代理节点为物联网设备和平台接入、代理的发布订阅数据来源层主题准入规则的具体方法是,以/#结尾,使客户端具备在数据来源层级主题基础上扩展到消息类型层级主题的能力。
5.根据权利要求4所述的方法,其特征在于,S6所述物联网请求设备向代理节点发送数据接入请求消息的具体方法是,包括以下步骤:
S61、创建消息类型层级主题列表;消息类型层级主题列表具体包括消息类型层级主题;
S62、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S63、根据S61所述的主题列表创建生产主题,生产主题具体包括,消息类型层级主题;
S64、设置至少分发一次消息服务质量等级[1],保证数据至少一次被消费到,提高消息传递时的可靠程度;
S65、根据S61至S64生成生产节点,当消息类型层级主题列表还有未生成生产节点,重复S61至S64,直到生成所有生产节点,所有生产节点组成消息类型层级主题生产端;
S66、物联网设备向代理节点发送数据时,使用消息类型层级主题生产节点生产数据。
6.根据权利要求5所述的方法,其特征在于,S7所述平台选择不同层级主题多个消费端节点消费数据的具体方法是,包括以下步骤:
S71、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和消息类型层级主题;
S72、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S73、根据S71所述的主题列表创建消费主题,消费主题具体包括,区域层级主题和消息类型层级主题;
S74、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S75、设置终端掉线通知消息,每一个节点都设置掉线通知;
S76、检查消费节点是否掉线,若消费节点掉线,触发邮件告警,若消费节点未掉线执行下一步骤;
S77、根据S71至S76生成多消费节点,当多消息类型层级主题列表还有未生成消费节点,重复S71至S76,直到生成所有消费节点,所有消费节点组成多消息类型层级主题消费端;
S78、判断消费主题是否为区域级别主题,若消费主题为区域层级别主题,则使用区域层级消费节点消费数据;若消息主题为消息类型层级主题,则使用消息类型层级主题消费节点消费数据。
7.根据权利要求6所述的方法,其特征在于,S9所述根据协议类型选择对应的多个发布消息多生产节点发送请求消息至服务器代理节点的具体方法是,包括以下步骤:
S91、创建多消息类型层级主题列表;多消息类型层级主题列表具体包括区域层级主题和网关层级主题;
S92、构造消费节点中涉及到构造可复用的连接工厂,连接平台与代理节点;
S93、根据S91所述的主题列表创建生产主题,生产主题具体包括,区域层级主题和网关层级主题;
S94、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息传递时的可靠程度;
S95、根据S91至S94生成多生产节点,当多消息类型层级主题列表还有未生成生产节点,重复S91至S96,直到生成所有生产节点,所有生产节点组成多消息类型层级主题生产端;
S96、判断生产主题是否为区域级别主题,若生产主题为区域层级别主题,则使用区域层级生产节点生产数据;若生产主题为网关层级主题,则使用消网关层级主题生产节点生产数据。
8.根据权利要求7所述的方法,其特征在于,S11所述选择不同层级主题消费端消费数据的具体方法是,包括以下步骤:
S111、构造生产节点中涉及到构造可复用的连接工厂,使多消费端可以共用一个连接实例;
S112、设置至少分发一次消息服务质量等级,保证数据至少一次被消费到,提高消息消费时的可靠程度;
S113、根据S111至S112生成生产节点,当生产节点列表还有未生成生产节点,重复S111至S112直到生成所有生产节点;
S114、注入轮训规则,使生产节点以轮训方式生产平台发送的数据到代理节点;
S115、创建消费主题,消费主题包括,区域层级主题和网关层级主题;根据区域生成区域层级主题,根据具体的网关ID生成网关层级主题;
S116、判断消费主题是否区域层级主题;若消费主题为区域层级别主题,则使用区域层级生产节点发送数据;若消费主题层级为网关ID层级主题,则使用网关层级主题多生产节点发送消息,使用S114所述的注入轮训规则发送消息;直至消息列表里的消息全部发送完成。
9.一种计算机,其特征在于,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现权利要求1至8任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111281855.2A CN113709263B (zh) | 2021-11-01 | 2021-11-01 | 一种物联网协议mqtt的数据接入方法、计算机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111281855.2A CN113709263B (zh) | 2021-11-01 | 2021-11-01 | 一种物联网协议mqtt的数据接入方法、计算机及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113709263A true CN113709263A (zh) | 2021-11-26 |
CN113709263B CN113709263B (zh) | 2022-03-18 |
Family
ID=78647624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111281855.2A Active CN113709263B (zh) | 2021-11-01 | 2021-11-01 | 一种物联网协议mqtt的数据接入方法、计算机及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113709263B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114501186A (zh) * | 2022-01-28 | 2022-05-13 | 瀚云科技有限公司 | 一种数据采集系统、方法、电子设备及存储介质 |
CN114827194A (zh) * | 2022-03-25 | 2022-07-29 | 青岛海尔科技有限公司 | 执行结果的发送方法和装置、存储介质及电子装置 |
CN115174613A (zh) * | 2022-06-15 | 2022-10-11 | 苏州思萃工业互联网技术研究所有限公司 | 基于物联网的园区能流图设计系统及方法 |
CN115426392A (zh) * | 2022-11-02 | 2022-12-02 | 苏州万店掌网络科技有限公司 | 一种设备网络管理方法、装置、设备及存储介质 |
WO2023168618A1 (en) * | 2022-03-09 | 2023-09-14 | Honeywell International Inc. | Lightweight supervisory control and data acquisition (scada) system and method |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180183862A1 (en) * | 2016-12-22 | 2018-06-28 | University-Industry Cooperation Group Of Kyung-Hee University | Apparatus and method for logically grouping client nodes in an iot environment using client identifiers |
CN108768826A (zh) * | 2018-05-16 | 2018-11-06 | 华南理工大学 | 基于MQTT和Kafka高并发场景下的消息路由方法 |
CN110268690A (zh) * | 2017-02-06 | 2019-09-20 | Pcms控股公司 | 保护物联网中的设备通信 |
CN112491795A (zh) * | 2020-10-27 | 2021-03-12 | 许继集团有限公司 | 一种边缘物联代理装置的数据打包方法及系统 |
CN113162970A (zh) * | 2021-01-27 | 2021-07-23 | 中央财经大学 | 基于发布/订阅模型的消息路由方法、装置、设备及介质 |
CN113157449A (zh) * | 2021-04-16 | 2021-07-23 | 上海寰果信息科技有限公司 | 基于mqtt的实时流数据分析处理方法 |
CN113259418A (zh) * | 2021-04-25 | 2021-08-13 | 深圳市城市交通规划设计研究中心股份有限公司 | 传输数据的方法、设备以及计算机可读存储介质 |
-
2021
- 2021-11-01 CN CN202111281855.2A patent/CN113709263B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180183862A1 (en) * | 2016-12-22 | 2018-06-28 | University-Industry Cooperation Group Of Kyung-Hee University | Apparatus and method for logically grouping client nodes in an iot environment using client identifiers |
CN110268690A (zh) * | 2017-02-06 | 2019-09-20 | Pcms控股公司 | 保护物联网中的设备通信 |
CN108768826A (zh) * | 2018-05-16 | 2018-11-06 | 华南理工大学 | 基于MQTT和Kafka高并发场景下的消息路由方法 |
CN112491795A (zh) * | 2020-10-27 | 2021-03-12 | 许继集团有限公司 | 一种边缘物联代理装置的数据打包方法及系统 |
CN113162970A (zh) * | 2021-01-27 | 2021-07-23 | 中央财经大学 | 基于发布/订阅模型的消息路由方法、装置、设备及介质 |
CN113157449A (zh) * | 2021-04-16 | 2021-07-23 | 上海寰果信息科技有限公司 | 基于mqtt的实时流数据分析处理方法 |
CN113259418A (zh) * | 2021-04-25 | 2021-08-13 | 深圳市城市交通规划设计研究中心股份有限公司 | 传输数据的方法、设备以及计算机可读存储介质 |
Non-Patent Citations (6)
Title |
---|
姚丹等: "基于MQTT协议的物联网通信系统的研究与实现", 《信息通信》 * |
张波等: "MQTT发布/订阅消息机制在Arduino传感节点的实现", 《电子世界》 * |
贾军营等: "面向移动互联网的统一通信会议", 《计算机系统应用》 * |
贾凡等: "基于MQTT的工业物联网通信系统研究与实现", 《智能科学与技术学报》 * |
邵欣欣等: "基于虚拟现实和物联网的水环境监测系统", 《中国科技论文》 * |
马跃等: "基于RocketMQ的MQTT消息推送服务器分布式部署方案", 《计算机系统应用》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114501186A (zh) * | 2022-01-28 | 2022-05-13 | 瀚云科技有限公司 | 一种数据采集系统、方法、电子设备及存储介质 |
CN114501186B (zh) * | 2022-01-28 | 2023-10-03 | 瀚云科技有限公司 | 一种数据采集系统、方法、电子设备及存储介质 |
WO2023168618A1 (en) * | 2022-03-09 | 2023-09-14 | Honeywell International Inc. | Lightweight supervisory control and data acquisition (scada) system and method |
CN114827194A (zh) * | 2022-03-25 | 2022-07-29 | 青岛海尔科技有限公司 | 执行结果的发送方法和装置、存储介质及电子装置 |
CN114827194B (zh) * | 2022-03-25 | 2024-03-22 | 青岛海尔科技有限公司 | 执行结果的发送方法和装置、存储介质及电子装置 |
CN115174613A (zh) * | 2022-06-15 | 2022-10-11 | 苏州思萃工业互联网技术研究所有限公司 | 基于物联网的园区能流图设计系统及方法 |
CN115174613B (zh) * | 2022-06-15 | 2024-04-12 | 苏州思萃工业互联网技术研究所有限公司 | 基于物联网的园区能流图设计系统及方法 |
CN115426392A (zh) * | 2022-11-02 | 2022-12-02 | 苏州万店掌网络科技有限公司 | 一种设备网络管理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113709263B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113709263B (zh) | 一种物联网协议mqtt的数据接入方法、计算机及存储介质 | |
CN111866191B (zh) | 消息事件的分发方法、分发平台、系统及服务器 | |
US20200404073A1 (en) | Method, apparatus, and equipment for exposing edge network capability, and storage medium | |
JP3654360B2 (ja) | 制御システムおよび方法、情報処理装置および方法、情報処理端末および方法、記録媒体、並びにプログラム | |
CN103781055A (zh) | 一种数据下载方法及相关设备 | |
CN101729491B (zh) | 一种增强基于脚本业务的应用可靠性的方法、装置和系统 | |
CN113572835B (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
CN111901230B (zh) | 一种支持设备接入验证的物联网网关、系统和设备接入验证的方法 | |
CN112671571B (zh) | 网络切片的选择方法、装置、设备及存储介质 | |
CN114338063B (zh) | 消息队列系统、业务处理方法及计算机可读存储介质 | |
CN112367259A (zh) | 物联网数据报文分发方法及装置 | |
CN112202877A (zh) | 网关联动方法、网关、云服务器及用户终端 | |
WO2020104010A1 (en) | Method and system for a network device to obtain a trusted state representation of the state of the distributed ledger technology network | |
US9009248B2 (en) | Apparatus and method of performing discovery based on priority level in distributed network, and method of determining discovery back-off time | |
CN116886718A (zh) | 基于交易权重的数据存储方法及装置 | |
KR20210066114A (ko) | 이기종 IoT 장치와 IoT 플랫폼의 연동을 위한 프록시, 방법 및 상기 프록시를 포함하는 시스템 | |
CN113055494B (zh) | 通讯方法及通讯装置 | |
CN114025005A (zh) | 一种数据通讯方法、系统、电子设备及存储介质 | |
US8990248B1 (en) | Peer-to-peer network image distribution hierarchy | |
CN113079029A (zh) | 配置信息订阅方法及装置 | |
CN114745339B (zh) | 多包报文数据的传输方法、传输装置和传输系统 | |
CN116684939B (zh) | 消息处理方法、装置、计算机设备和计算机可读存储介质 | |
CN112788149B (zh) | 一种分布式云中软件快速分发方法及系统 | |
CN114338692B (zh) | 一种基于分片集群扩容的数据平衡方法与设备 | |
CN113347040B (zh) | 配置变更方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |