CN114338801B - 一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 - Google Patents
一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 Download PDFInfo
- Publication number
- CN114338801B CN114338801B CN202210166996.8A CN202210166996A CN114338801B CN 114338801 B CN114338801 B CN 114338801B CN 202210166996 A CN202210166996 A CN 202210166996A CN 114338801 B CN114338801 B CN 114338801B
- Authority
- CN
- China
- Prior art keywords
- message
- intelligent
- apps
- app
- manager
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000005259 measurement Methods 0.000 claims abstract description 88
- 238000004891 communication Methods 0.000 claims abstract description 47
- 238000013507 mapping Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000003993 interaction Effects 0.000 claims description 21
- 230000002776 aggregation Effects 0.000 claims description 18
- 238000004220 aggregation Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 22
- 238000002955 isolation Methods 0.000 abstract description 7
- 230000006870 function Effects 0.000 abstract description 3
- 230000008901 benefit Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 208000033748 Device issues Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
本发明公开了一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质,该方法通过构建消息管理器,将智能量测设备中的多个App虚拟化映射在Docker容器内,并实现多个APP之间的相互通信,消息管理器在获取消息发布App所发布的消息后根据每个消息订阅App所订阅的消息内容将对发布消息进行对应发送,多个智能量测设备的App通过消息管理器进行消息传递,不仅为智能量测设备上的App提供了独立部署的隔离环境,而且支持多个App之间的互联互通,智能量测设备可以下载多元功能的App,保证智能量测设备对及时控制类消息可以进行及时、有效、稳定和安全的处理。
Description
技术领域
本发明涉及通讯网络技术领域,特别地,涉及一种适用于智能量测设备的轻量级发布订阅方法及***、设备、计算机可读取的存储介质。
背景技术
发布订阅***用于将数据从发布者分发给订阅者,提供了一种松散的通信模式。发布订阅是一种消息范式,消息的发送者,即发布者,不会将消息直接发送给特定的接收者,即订阅者,而是将发布的消息分为不同的类别,无需了解哪些订阅者可能存在。同样的,订阅者可以表达对一个或多个类别的兴趣,只接收感兴趣的消息,无需了解哪些发布者存在。发布订阅***在时间、空间和同步方面实现了通信双方的完全解耦,广泛部署在大规模分布式的应用中。
智能量测设备包括智能行业设备,例如智能物联表、能源控制器和新一代智能电表等,因智能量测设备中APP之间交互很多使用串口和RS485等低速率通信方式,因此,现有的发布订阅***效率较低,无法满足智能量测设备实时响应的要求。
发明内容
本发明提供了一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质,以解决现有智能量测设备的APP之间采用串口和RS485等低速率通信方式进行交互存在的效率低、无法满足实时响应要求的技术问题。
根据本发明的一个方面,提供一种适用于智能量测设备的轻量级发布订阅方法,包括以下内容:
构建消息管理器,所述消息管理器针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信;
消息管理器获取第一智能量测设备中的消息发布App所发布的多条消息;
消息管理器将多条消息根据App类别分别存储至对应的Docker容器中并形成消息队列;
消息管理器根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App。
进一步地,所述建立消息管理器的过程具体为:
对智能量测设备的操作***进行轻量级虚拟化处理;
对智能量测设备中搭载的多个App对应建立一个Docker容器,多个Docker容器之间通过虚拟网络连接;
制定基于高速总线通信的高效数据交互协议以实现Docker容器间的通信。
进一步地,消息管理器的数量为多个,多个消息管理器采用逐级通信方式,且每个消息管理器均与第二智能量测设备进行通信,在消息管理器根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App之前还包括以下内容:
每个消息管理器在接收到消息队列后判断是否需要进行中继转发,若需要则将消息队列转发至下一级消息管理器,下一级消息管理器判断消息队列中是否包含自身的订阅消息,若包含则进行订阅消息响应,若不包含则将消息队列继续转发至下一级消息管理器。
进一步地,在形成消息队列之后还包括以下内容:
消息管理器根据电能表档案映射关系,将电能表表号和抄读的数据标识进行压缩汇聚以形成压缩汇聚类消息,所述压缩汇聚类消息包括消息头、汇聚标志、映射序号表、汇聚消息列表和消息校验,其中,映射序号表与电能表档案一一对应。
进一步地,消息订阅App在收到其订阅的消息后,通过汇聚标志判断该消息是否为压缩汇聚类消息,若是则根据电能表档案映射关系对消息进行拆分解压重组,生成该消息订阅App所需的消息进行下发。
进一步地,在形成消息队列之后还包括以下内容:
从消息队列的所有发布消息中提取出所有App所需的基础通用类消息并汇聚打包形成一条通用发布消息,并进行多级消息管理器之间的逐级转发,每个消息管理器按需进行通用发布消息的拆解并进行订阅消息响应。
另外,本发明还提供一种适用于智能量测设备的轻量级发布订阅***,包括:
第一智能量测设备,搭载有至少一个消息发布App,用于发布消息;
第二智能量测设备,搭载有至少一个消息订阅App,用于订阅消息;
消息管理器,用于针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信,在获取第一智能量测设备中的消息发布App所发布的多条消息之后,根据App类别将多条发布消息分别存储至对应的Docker容器中并形成消息队列,并根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App。
进一步地,所述消息管理器包括:
虚拟化单元,用于对智能量测设备的操作***进行轻量级虚拟化处理;
隔离单元,用于对智能量测设备中搭载的多个App对应建立一个Docker容器,多个Docker容器之间通过虚拟网络连接;
交互单元,用于制定基于高速总线通信的高效数据交互协议以实现Docker容器间的通信,并生成消息队列。
另外,本发明还提供一种设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明还提供一种计算机可读取的存储介质,用于存储适用于智能量测设备进行轻量级发布订阅的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
本发明具有以下效果:
本发明的适用于智能量测设备的轻量级发布订阅方法,通过构建消息管理器,将智能量测设备中的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信,消息管理器在获取第一智能量测设备的消息发布App所发布的消息后根据第二智能量测设备中每个消息订阅App所订阅的消息内容将对发布消息进行对应发送,多个智能量测设备的App通过消息管理器进行消息传递,在智能量测设备内通过串口或RS485等低速率通信方式进行消息传递时提高了传输效率,不仅为智能量测设备上的App提供了独立部署的隔离环境,而且支持多个App之间的互联互通,智能量测设备可以下载多元功能的App,保证智能量测设备对及时控制类消息可以进行及时、有效、稳定和安全的处理。
另外,本发明的适用于智能量测设备的轻量级发布订阅***同样具有上述优点。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明优选实施例的适用于智能量测设备的轻量级发布订阅方法的流程示意图。
图2是图1中步骤S1的子流程示意图。
图3是本发明另一实施例的适用于智能量测设备的轻量级发布订阅方法的流程示意图。
图4是本发明又一实施例的适用于智能量测设备的轻量级发布订阅方法的流程示意图。
图5是本发明再一实施例的适用于智能量测设备的轻量级发布订阅方法的流程示意图。
图6是本发明另一实施例的适用于智能量测设备的轻量级发布订阅***的模块结构示意图。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以由下述所限定和覆盖的多种不同方式实施。
如图1所示,本发明的优选实施例提供一种适用于智能量测设备的轻量级发布订阅方法,包括以下内容:
步骤S1:构建消息管理器,所述消息管理器针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并可实现多个App之间的相互通信;
步骤S2:消息管理器获取第一智能量测设备中的消息发布App所发布的多条消息;
步骤S3:消息管理器将多条消息根据App类别分别存储至对应的Docker容器中并形成消息队列;
步骤S4:消息管理器根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App。
可以理解,本实施例的适用于智能量测设备的轻量级发布订阅方法,通过构建消息管理器,将智能量测设备中的多个App虚拟化映射在Docker容器内,并实现多个Docker容器之间的相互通信,消息管理器在获取第一智能量测设备的消息发布App所发布的消息后根据第二智能量测设备中每个消息订阅App所订阅的消息内容将对发布消息进行对应发送,多个智能量测设备的App通过消息管理器进行消息传递,在智能量测设备内通过串口或RS485等低速率通信方式进行消息传递时提高了传输效率,不仅为智能量测设备上的App提供了独立部署的隔离环境,而且支持多个App之间的互联互通,智能量测设备可以下载多元功能的App,保证智能量测设备对及时控制类消息可以进行及时、有效、稳定和安全的处理。
可以理解,如图2所示,所述步骤S1中建立消息管理器的过程具体为:
步骤S11:对智能量测设备的操作***进行轻量级虚拟化处理;
步骤S12:对智能量测设备中搭载的多个App对应建立一个Docker容器,多个Docker容器之间通过虚拟网络连接;
步骤S13:制定基于高速总线通信的高效数据交互协议以实现Docker容器间的通信。
具体地,先研究智能量测设备的硬件,包括磁盘空间、内存空间、计算能力和接口多样性,分析智能量测设备的硬件特点,包括可靠性、安全性和App部署方式,基于智能量测设备的硬件特点提出操作***资源虚拟化的需求点。然后,研究OpenVZ、LXC和Docker等主流操作***虚拟化方案,比较分析各操作***虚拟化方案的优势和缺点,同时,研究Namespace、Cgroups和UnionFileSystem环境操作***虚拟化技术,建立智能量测设备的操作***虚拟化机制,其中,操作***虚拟化机制可优选为Docker容器虚拟化技术。然后,基于智能量测设备的操作***虚拟化机制,结合智能量测设备操作***资源虚拟化的需求点,对智能量测设备的操作***进行轻量级虚拟化。
再构建基于Docker的多级安全容器隔离模型,Docker容器是一个开源的应用容器引擎,它可以让开发者以统一的方式打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上,包括Linux机器和windows机器,也可以实现操作***虚拟化,达到快速交付、测试和部署。Docker在一个单一的容器内捆绑了关键的APP组件,让单一容器可以在不同平台和云计算之间实现便携性,Docker是一个实现跨多个不同环境运行的App的理想容器,可以实现同宿主机不同Docker容器之间相互通信。因此,针对智能量测设备中搭载的多款App对应建立一个Docker容器,后续智能量测设备中消息发布App所发布的消息则存储至对应的Docker容器中,从而实现每个App的独立部署和相互隔离,保证了安全性、可靠性,并且多个Docker容器之间可进行相互通信,实现了不同App之间的互联互通。其中,多个Docker容器之间通过虚拟网络进行连接,而Docker容器的四种网络模式包括:bridge桥接模式、host模式、other container模式和none模式,通过对四种网络模式下的Docker容器进行物理机性能测试评估,从可移植性、实时性、部署便捷性和轻量化等多方面进行考量评估,根据不同网路模式之间的差异性和优缺点,确定所采用的网络模式为bridge桥接模式,它是实现Docker容器间高效数据交互的最佳网络通信模式。可以理解,在本发明的其它实施例中,也可以针对每款App都单独建立一个Docker容器。
然后,在虚拟网路连接方式下,为保证隔离性和安全性,并对容器间交互需求进行分析,交互需求可包括:网络延迟和可预测响应时间、可靠性、可用性、伸缩性和安全性,需要制定可靠的交互协议。通过研究容器间数据交互模型消息中间件的传输模式和应用场景,需要建立符合Docker容器间数据交互的消息中间件模型,例如发布订阅模型。当前常见的可实现消息队列的协议有:AMQP,MQTT,XMPP,根据协议应用场景和功能特点,本实施例以MQTT通信协议为基础制定基于高速总线通信的容器间高效数据交互协议,并对交互协议的边界、功能和带宽进行***测试。其中,消息中间件是指通过安全、高效、可靠的消息传输进行信息交换服务的平台或***,消息中间件使应用程序之间以松耦合的形式集成,发送方与接收方之间完全独立,可以使用不同的语言或者框架进行实现,也不必集成在一起,它们之间彼此不相互通信,甚至不知道对方的存在,也不必同时在线,仅与提供消息传输服务的消息中间件进行数据交换,消息中间件在这个过程中负责消息的保存以及消息的可靠传输,完成消息的透传,实现容器之间的数据交换。
可以理解,在所述步骤S2中,第一智能量测设备指的是发出消息的智能量测设备,当然,在发明的其它实施例中,第一智能量测设备也可以同时作为订阅消息的智能量测设备,即智能量测设备既可以发布消息,同时也可以订阅消息。为了便于进行说明,在本实施例中,以第一智能量测设备作为发布消息的一方,以第二智能量测设备作为订阅消息的一方。另外,第一智能量测设备和第二智能量测设备也可以指的是同一个终端,即实现同一智能量测设备内部搭载的不同App之间的消息传递。所述智能量测设备可以是智能物联表、能源控制器或新一代智能电表等,智能量测设备上搭载有多个用于数据交互的消息发布App,例如智能物联表上的定位App、计费App等,第一智能量测设备通过消息发布App发布消息。所述消息管理器通过App接口与第一智能量测设备中的各个消息发布App虚拟连接,从而获得各个消息发布App所发布的多条消息。其中,App接口优选采用可移植操作***接口,即POSIX接口,基于该接口的App可移植性高,App不做修改或仅做极少量修改就可以在支持POSIX的不同操作***之间移植。
可以理解,在所述步骤S3中,消息管理器在获取多个消息发布App所发布的消息后,根据App类别将多条发布消息分别存储至对应的Docker容器中,实现消息的单独存储。并通过多个Docker容器之间的相互通信,基于高速总线通信的容器间高效数据交互协议将多条发布消息形成一个消息队列。
可以理解,在所述步骤S4中,第二量测设备中同样也搭载了多个用于数据交互的消息订阅App,消息订阅App同样通过POSIX接口与消息管理器虚拟连接。消息管理器可以获取每个消息订阅App所订阅的消息内容,消息管理器在生成消息队列后则根据第二量测设备中各个消息订阅App所订阅的消息内容将多条发布消息对应发送至多个消息订阅App,消息发布App和消息订阅App之间以松耦合的方式集成,消息发布方和消息订阅方之间完全独立,使得智能量测设备上的App能够独立部署和独立应用。
可选地,消息管理器的数量为多个,多个消息管理器采用逐级通信方式,且每个消息管理器均与第二智能量测设备进行通信。如图3所示,在本发明的另一实施例中,在所述步骤S4之前还包括以下内容:
步骤S34a:每个消息管理器在接收到消息队列后判断是否需要进行中继转发,若需要则将消息队列转发至下一级消息管理器,下一级消息管理器判断消息队列中是否包含自身的订阅消息,若包含则进行订阅消息响应,若不包含则将消息队列继续转发至下一级消息管理器。
具体地,多个消息管理器之间采用逐级通信的方式连接,其中,至少一个消息管理器连接有第一智能量测设备,其余的消息管理器都对应连接有至少一个第二智能量测设备,通过设置多个消息管理器来搭建分布式通信架构,可以实现发布消息在多个消息管理器之间的逐级中继转发,有利于提高信息的传输效率。与第一智能量测设备连接的消息管理器在获取发布消息并生成消息队列后,将消息中继转发至下一级的消息管理器,下一级的消息管理器根据与其连接的消息订阅App所订阅的消息内容判断消息队列中是否有其所订阅的消息,若有则进行订阅消息响应,若无则将消息队列继续转发至下一级的消息管理器,最多可实现7次转发。通过构建分布式通信架构,利用多级消息管理器进行消息中继转发,可以大大减少消息的数量,减少***带宽的占用,提高消息的传输效率,有利于智能量测设备及时有效地响应电网***中实时控制类的需求响应。
可选地,如图4所示,在本发明的其它实施例中,所述方法在形成消息队列之后还包括以下内容:
步骤S34b:消息管理器根据电能表档案映射关系,将电能表表号和抄读的数据标识进行压缩汇聚以形成压缩汇聚类消息,所述压缩汇聚类消息包括消息头、汇聚标志、映射序号表、汇聚消息列表和消息校验,其中,映射序号表与电能表档案一一对应。
可以理解,智能量测设备进行数据获取时,会对多表号(M只表)、多数据标识(N个数据)一起召测,而每只表的每个数据标识为一条30byte的发布消息,则共M*N条消息M*N(基本上M>100,N>10),而通过串口、RS485等低速率通信接口进行通信的App会因为通信速率问题会导致消息传输效率极低,无法满足智能量测设备的响应及时性。因此,消息管理器根据电能表档案映射关系,将电能表表号和抄读的数据标识进行压缩汇聚以形成压缩汇聚类消息,所述压缩汇聚类消息包括消息头、汇聚标志、映射序号表、汇聚消息列表和消息校验,其中,映射序号表与电能表档案一一对应,压缩后的压缩汇聚类消息的消息长度为1byte表序号+1byte数据标识,每条压缩汇聚类消息可以同时包含m只表的n个数据标识,大大减少了通信数据量,提高了低速率通信接口的消息传输效率。
另外,所述步骤S4还包括以下内容:
消息订阅App在收到其订阅的消息后,通过汇聚标志判断该消息是否为压缩汇聚类消息,若是则根据电能表档案映射关系对消息进行拆分解压重组,生成该消息订阅App所需的消息进行下发。
可选地,如图5所示,在本发明的其它实施例中,所述方法在形成消息队列之后还包括以下内容:
步骤S34c:从消息队列的所有发布消息中提取出所有App所需的基础通用类消息并汇聚打包形成一条通用发布消息,并进行多级消息管理器之间的逐级转发,每个消息管理器按需进行通用发布消息的拆解并进行订阅消息响应。
可以理解,针对所有App都需要的基础通用类消息,可以从多条发布消息中提取出基础通用类消息,并进行分类汇聚打包形成一条通用发布消息,直接通过多级消息管理器进行同步中继转发,每个消息管理器根据自身需要进行订阅消息响应,将基础通用类消息以最快地速度发送至消息订阅App,极大地提高了消息的传输效率。
另外,如图6所示,本发明的另一实施例还提供一种适用于智能量测设备的轻量级发布订阅***,优选采用上述实施例的轻量级发布订阅方法,该***包括:
第一智能量测设备,搭载有至少一个消息发布App,用于发布消息;
第二智能量测设备,搭载有至少一个消息订阅App,用于订阅消息;
消息管理器,用于针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信,在获取第一智能量测设备中的消息发布App所发布的多条消息之后,根据App类别将多条发布消息分别存储至对应的Docker容器中并形成消息队列,并根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App。其中,第一智能量测设备和第二智能量测设备的数量可以为多个。
可以理解,本实施例的适用于智能量测设备的轻量级发布订阅***,通过构建消息管理器,将智能量测设备中的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信,消息管理器在获取第一智能量测设备的消息发布App所发布的消息后根据第二智能量测设备中每个消息订阅App所订阅的消息内容将对发布消息进行对应发送,多个智能量测设备的App通过消息管理器进行消息传递,在智能量测设备内通过串口或RS485等低速率通信方式进行消息传递时提高了传输效率,不仅为智能量测设备上的App提供了独立部署的隔离环境,而且支持多个App之间的互联互通,智能量测设备可以下载多元功能的App,保证智能量测设备对及时控制类消息可以进行及时、有效、稳定和安全的处理。
其中,所述消息管理器包括:
虚拟化单元,用于对智能量测设备的操作***进行轻量级虚拟化处理;
隔离单元,用于对智能量测设备中搭载的多个App对应建立一个Docker容器,多个Docker容器之间通过虚拟网络连接;
交互单元,用于制定基于高速总线通信的高效数据交互协议以实现Docker容器间的通信,并生成消息队列。
另外,本发明的另一实施例还提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如上所述的方法的步骤。
另外,本发明的另一实施例还提供一种计算机可读取的存储介质,用于存储适用于智能量测设备进行轻量级发布订阅的计算机程序,所述计算机程序在计算机上运行时执行如上所述的方法的步骤。
一般计算机可读取存储介质的形式包括:软盘(floppy disk)、可挠性盘片(flexible disk)、硬盘、磁带、任何其与的磁性介质、CD-ROM、任何其余的光学介质、打孔卡片(punch cards)、纸带(paper tape)、任何其余的带有洞的图案的物理介质、随机存取存储器(RAM)、可编程只读存储器(PROM)、可抹除可编程只读存储器(EPROM)、快闪可抹除可编程只读存储器(FLASH-EPROM)、其余任何存储器芯片或卡匣、或任何其余可让计算机读取的介质。指令可进一步被一传输介质所传送或接收。传输介质这一术语可包含任何有形或无形的介质,其可用来存储、编码或承载用来给机器执行的指令,并且包含数字或模拟通信信号或其与促进上述指令的通信的无形介质。传输介质包含同轴电缆、铜线以及光纤,其包含了用来传输一计算机数据信号的总线的导线。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种适用于智能量测设备的轻量级发布订阅方法,其特征在于,包括以下内容:
构建消息管理器,所述消息管理器针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并实现多个APP之间的相互通信,所述消息管理器通过POSIX接口与第一智能量测设备中的消息发布App和第二智能量测设备中的消息订阅App虚拟连接;所述构建消息管理器的过程具体为:
对智能量测设备的操作***进行轻量级虚拟化处理;
对智能量测设备中搭载的多个App对应建立一个Docker容器,多个Docker容器之间通过虚拟网络连接;
制定基于高速总线通信的高效数据交互协议以实现Docker容器间的通信;
消息管理器获取第一智能量测设备中的消息发布App所发布的多条消息;
消息管理器将多条消息根据App类别分别存储至对应的Docker容器中,并通过多个Docker容器之间的相互通信,基于高速总线通信的容器间高效数据交互协议将多条发布消息形成一个消息队列;
消息管理器根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App;
消息管理器的数量为多个,多个消息管理器采用逐级通信方式,至少一个消息管理器连接有第一智能量测设备,其余的消息管理器都对应连接有至少一个第二智能量测设备,在消息管理器根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App之前还包括以下内容:
与第一智能量测设备连接的消息管理器在获取发布消息并生成消息队列后,将消息中继转发至下一级的消息管理器,下一级的消息管理器根据与其连接的消息订阅App所订阅的消息内容判断消息队列中是否有其所订阅的消息,若有则进行订阅消息响应,若无则将消息队列继续转发至下一级的消息管理器;
在形成消息队列之后还包括以下内容:
从消息队列的所有发布消息中提取出所有App所需的基础通用类消息并汇聚打包形成一条通用发布消息,并进行多级消息管理器之间的逐级转发,每个消息管理器按需进行通用发布消息的拆解并进行订阅消息响应。
2.如权利要求1所述的适用于智能量测设备的轻量级发布订阅方法,其特征在于,在形成消息队列之后还包括以下内容:
消息管理器根据电能表档案映射关系,将电能表表号和抄读的数据标识进行压缩汇聚以形成压缩汇聚类消息,所述压缩汇聚类消息包括消息头、汇聚标志、映射序号表、汇聚消息列表和消息校验,其中,映射序号表与电能表档案一一对应。
3.如权利要求2所述的适用于智能量测设备的轻量级发布订阅方法,其特征在于,消息订阅App在收到其订阅的消息后,通过汇聚标志判断该消息是否为压缩汇聚类消息,若是则根据电能表档案映射关系对消息进行拆分解压重组,生成该消息订阅App所需的消息进行下发。
4.一种适用于智能量测设备的轻量级发布订阅***,采用如权利要求1~3任一项所述的方法,其特征在于,包括:
第一智能量测设备,搭载有至少一个消息发布App,用于发布消息;
第二智能量测设备,搭载有至少一个消息订阅App,用于订阅消息;
消息管理器,用于针对智能量测设备中搭载的多个App虚拟化映射在Docker容器内,并实现多个App之间的相互通信,在获取第一智能量测设备中的消息发布App所发布的多条消息之后,根据App类别将多条发布消息分别存储至对应的Docker容器中并形成消息队列,并根据订阅消息的内容将消息队列对应发送至第二智能量测设备的消息订阅App。
5.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1~3任一项所述的方法的步骤。
6.一种计算机可读取的存储介质,用于存储适用于智能量测设备进行轻量级发布订阅的计算机程序,其特征在于,所述计算机程序在计算机上运行时执行如权利要求1~3任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210166996.8A CN114338801B (zh) | 2022-02-23 | 2022-02-23 | 一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210166996.8A CN114338801B (zh) | 2022-02-23 | 2022-02-23 | 一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114338801A CN114338801A (zh) | 2022-04-12 |
CN114338801B true CN114338801B (zh) | 2024-03-15 |
Family
ID=81030333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210166996.8A Active CN114338801B (zh) | 2022-02-23 | 2022-02-23 | 一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114338801B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115134419A (zh) * | 2022-06-24 | 2022-09-30 | 杭州涂鸦信息技术有限公司 | 一种数据传输方法、装置、设备和介质 |
CN115378922A (zh) * | 2022-08-09 | 2022-11-22 | 国网湖南省电力有限公司 | 一种支持app互联互通的嵌入式操作***软件接口方法 |
CN116723235B (zh) * | 2023-08-08 | 2023-11-07 | 北京智芯微电子科技有限公司 | 智慧开关控制单元、硬件架构、功能实现方法及智慧开关 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203192219U (zh) * | 2013-03-26 | 2013-09-11 | 沈阳时尚实业有限公司 | 一种具有快速抄读功能的电能表采集器 |
CN111600936A (zh) * | 2020-04-24 | 2020-08-28 | 国电南瑞科技股份有限公司 | 一种适用于泛在电力物联网边缘终端的基于多容器的非对称处理*** |
CN111641710A (zh) * | 2020-05-29 | 2020-09-08 | 深圳壹账通智能科技有限公司 | 基于微服务的数据处理方法、装置、终端及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6381837B1 (ja) * | 2018-01-17 | 2018-08-29 | 株式会社Cygames | 通信を行うためのシステム、プログラム、方法及びサーバ |
-
2022
- 2022-02-23 CN CN202210166996.8A patent/CN114338801B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203192219U (zh) * | 2013-03-26 | 2013-09-11 | 沈阳时尚实业有限公司 | 一种具有快速抄读功能的电能表采集器 |
CN111600936A (zh) * | 2020-04-24 | 2020-08-28 | 国电南瑞科技股份有限公司 | 一种适用于泛在电力物联网边缘终端的基于多容器的非对称处理*** |
CN111641710A (zh) * | 2020-05-29 | 2020-09-08 | 深圳壹账通智能科技有限公司 | 基于微服务的数据处理方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114338801A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114338801B (zh) | 一种适用于智能量测设备的轻量级发布订阅方法及***、设备、存储介质 | |
US9602307B2 (en) | Tagging virtual overlay packets in a virtual networking system | |
CN109391500B (zh) | 一种配置管理方法、装置及设备 | |
US20140269321A1 (en) | Quantized congestion notification in a virtual networking system | |
CN109756559B (zh) | 面向嵌入式机载***分布式数据分发服务的构建及使用方法 | |
CN106357726B (zh) | 负载均衡方法及装置 | |
CN111294235B (zh) | 数据处理方法、装置、网关及可读存储介质 | |
CN110138753B (zh) | 分布式消息服务***、方法、设备及计算机可读存储介质 | |
CN106992940B (zh) | 报文处理方法、装置、***及终端 | |
CN115065637B (zh) | 传输算力资源信息的方法、装置和电子设备 | |
CN108093041A (zh) | 单通道vdi代理服务***及实现方法 | |
CN110728558A (zh) | 虚拟物品包发送方法、装置、设备和存储介质 | |
CN109996196A (zh) | 路由寻址方法、短消息下行处理方法、设备和*** | |
CN114050998A (zh) | 实现远程直接内存访问的方法、装置、电子设备及介质 | |
CN110932393B (zh) | 一种变电站保信主站***及其数据初始化方法 | |
CN111679922A (zh) | 基于事件驱动的消息发布方法、装置及*** | |
CN116450563A (zh) | 一种消息接收装置和处理器通信*** | |
CN114710311B (zh) | 一种多项目消息管理方法和*** | |
CN109614354A (zh) | 接口分配方法、板卡、设备及存储介质 | |
CN115460258A (zh) | 工业设备数据采集控制***及方法 | |
CN112764945B (zh) | 消息中心服务中间件*** | |
CN114897532A (zh) | 操作日志处理方法、***、装置、设备和存储介质 | |
CN113132928B (zh) | 视频短信业务的计费方法及装置 | |
CN113141236A (zh) | 一种报文处理方法和装置 | |
CN110719303B (zh) | 一种容器化nrf的方法及*** |
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 |