CN107426300A - 订阅数据的发送、接收方法、装置及系统 - Google Patents

订阅数据的发送、接收方法、装置及系统 Download PDF

Info

Publication number
CN107426300A
CN107426300A CN201710461460.8A CN201710461460A CN107426300A CN 107426300 A CN107426300 A CN 107426300A CN 201710461460 A CN201710461460 A CN 201710461460A CN 107426300 A CN107426300 A CN 107426300A
Authority
CN
China
Prior art keywords
subscribed
data
subscriber
subscribing
content
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.)
Pending
Application number
CN201710461460.8A
Other languages
English (en)
Inventor
杜光东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Shenglu IoT Communication Technology Co Ltd
Original Assignee
Shenzhen Shenglu IoT Communication Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Shenglu IoT Communication Technology Co Ltd filed Critical Shenzhen Shenglu IoT Communication Technology Co Ltd
Priority to CN201710461460.8A priority Critical patent/CN107426300A/zh
Priority to PCT/CN2017/093368 priority patent/WO2018227695A1/zh
Publication of CN107426300A publication Critical patent/CN107426300A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及物联网技术领域,尤其涉及一种订阅数据的发送、接收方法、装置及系统。该方法包括:被订阅方通过二级节点接收并存储订阅方通过一级节点发送的订阅方与被阅方的订阅关系;当被订阅方获取到订阅内容时,被订阅方根据订阅方与被订阅方的订阅关系查找到订阅内容的订阅方,将订阅内容通过发布智能体发送给查找到的订阅方。本发明将数据订阅方与被订阅方的订阅关系存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,以根据获取到的订阅关系进行数据的发送,在预先存储了数据订阅方与被订阅方的订阅关系的基础上,基于二级节点处理海量数据的特点,使得本发明的数据发送方法能够支持海量数据的发送。

Description

订阅数据的发送、接收方法、装置及系统
技术领域
本发明涉及物联网技术领域,尤其涉及一种订阅数据的发送、接收方法、装置及系统。
背景技术
物联网快速发展的同时也制造了海量数据,如何妥善处理及合理利用这些海量数据是物联网下一步发展的关键。由于物联网的海量数据具有实时、高吞吐、数据量巨大以及数据具体内容杂,因此物联网需要一种能够支持实时、高并发、支持海量数据的数据发送机制,而通用的数据队列软件却不能很好地解决此类问题,物联网具有海量的接入用户和接入设备,数据订阅和发送规则也极为庞杂,信息传递的实时性要求也较高,而通用的数据队列软件主要基于topic机制进行数据的订阅和发送,不能在保证高处理效率的前提下对这种场景进行支持。
综上可知,传统物联网数据发送方式无法为海量数据发送提供支持。
发明内容
鉴于此,本发明实施例提供一种订阅数据的发送、接收方法、装置及系统,以解决传统物联网数据发送方式无法支持海量数据发送提供支持的问题。
本发明实施例的第一方面,提供了一种订阅数据的发送方法,其特征在于,应用于订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的发送方法包括:
被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系;
当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
在第一方面的第一种可能的实现方式中,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
本发明实施例的第二方面,提供了一种订阅数据的接收方法,其特征在于,应用于所述订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的接收方法,包括:
订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
在第二方面的第一种可能的实现方式中,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
本发明实施例的第三方面,提供了一种订阅数据的发送装置,其特征在于,该装置使用所述订阅数据的发送与接收系统实现数据的发送,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,包括:
第一接收模块,用于被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系;
第一发送模块,用于当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
在第三方面的第一种可能的实现方式中,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
本发明实施例的第四方面,提供了一种订阅数据的接收装置,其特征在于,该装置使用所述订阅数据的发送与接收系统实现数据的接收,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,包括:
第二发送模块,用于通过所述订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
第二接收模块,用于所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
在第四方面的第一种可能的实现方式中,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
本发明实施例的第五方面,提供了一种订阅数据的发送与接收方法,其特征在于,应用于订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的发送与接收方法包括:
被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系;
订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方;
所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
本发明实施例的第六方面,提供了一种订阅数据的发送与接收系统,包括:一级节点、发布智能体以及二级节点;
所述一级节点用于接收订阅方的接收请求以及被订阅方的发送请求,将所述接收请求以及所述发送请求发送给所述发布智能体;
所述一级节点还用于接收所述被订阅方发送的订阅方与被订阅方的订阅关系,将所述订阅关系发送给二级节点;
所述一级节点还用于接收所述被订阅方查询所述订阅关系的查询请求,根据所述查询请求从所述二级节点获取所述订阅关系后将所述订阅关系发送给所述被订阅方;
所述发布智能体用于通过所述一级节点获知所述订阅方的接收请求,以及通过所述一级节点获知所述被订阅方的发送请求,根据所述接收请求创建用于接收被订阅方数据的topic,以及根据所述发送请求通过topic发送数据;
所述二级节点用于存储所述订阅关系。
本发明实施例提供的技术方案带来的有益效果是:将数据订阅方与被订阅方的订阅关系存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,以根据获取到的订阅关系进行数据的发送,在预先存储了数据订阅方与被订阅方的订阅关系的基础上,基于二级节点处理海量数据的特点,使得本发明的数据发送方法能够支持海量数据的发送。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的订阅数据的发送与接收系统的结构示意图
图2是本发明实施例二提供的订阅数据的发送方法的流程图;
图3是本发明实例三提供的传统数据结构与改进后的数据结构的对比示意图;
图4是本发明实施例四提供的订阅数据的发送方法的流程图;
图5是本发明实施例六提供的订阅数据发送与接收流程的信令流程图;
图6是本发明实施例七提供的订阅数据的发送装置的结构框图;
图7是本发明实施例十提供的订阅数据的发送装置的结构框图;
图8是本发明实施例十一提供的订阅数据的接收装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
现在将详细地参考具体实施例,这些实施例的示例在附图中被示出。在下面的详细描述中示出了许多具体细节,以便于提供对各种所描述的实施例的充分理解。但是,对本领域的普通技术人员来讲显而易见的是,各种所描述的实施例可以没有在这些具体细节的情况下被实践。在其他情况下,没有详细地描述众所周知的方法、过程、部件、电路、和网络,从而不会不必要地使实施例的方面晦涩难懂。
在本文中对各种所描述的实施例的描述中所使用的术语只是为了描述特定实施例的目的,而并非旨在进行限制。如在对各种所描述的实施例的描述和所附权利要求书中所使用,单个形式“一个”、“一种”和“所述”旨在也包括复数形式,除非上下文明确地另外指出。也将理解的是,本文所用的术语“和/或”是指并包括相关联的所列出的项目的一个或多个的任何和所有可能的组合。另外将理解的是,当术语“包括”和/或“包含”在本说明书中使用时,规定了所阐明的特征、整数、步骤、操作、元件、和/或部件的存在,但不排除存在或增加一个或多个其他特征、整数、操作、元件、部件和/或它们的分组。
为了解决传统物联网数据的发送与接收方式无法支持海量数据发送与接收的问题,本发明提供了一种订阅数据的发送、接收方法、装置及系统,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
实施例一
图1是本发明实施例一提供的订阅数据的发送与接收系统的结构示意图,如图1所示,本发明实施例中的服务端优选地可以包括发布智能体、二级节点以及一级节点,数据提供者与数据接收者通过与服务端进行交互来实现数据订阅、发送以及接收的整个流程,其中,发布智能体主要实现按照topic进行数据的订阅、发送以及接收,二级节点主要承担数据订阅、发送以及接收规则的增删改查。
具体的,上述发布智能体、二级节点以及一级节点主要具有如下功能:
一级节点用于接收订阅方的接收请求以及被订阅方的发送请求,将接收请求以及发送请求发送给发布智能体。
一级节点还用于接收被订阅方发送的订阅方与被订阅方的订阅关系,将订阅关系发送给二级节点。其中,由于订阅关系主要由Topic组成。
一级节点还用于接收被订阅方查询订阅关系的请求,根据请求从二级节点获取订阅关系后将订阅关系发送给被订阅方。
发布智能体用于通过一级节点获知订阅方的接收请求,以及通过一级节点获知被订阅方的发送请求,根据接收请求创建用于接收被订阅方数据的topic,以及根据发送请求通过topic发送数据。
二级节点用于存储订阅关系。
优选地,二级节点和一级节点均可以是多个,发布智能体、二级节点和一级节点均具备横向扩展能力,即可以应付大量非结构化数据存储的需要,配置时方便,即使是一个几TB的大文件,其变更管理也十分简单。横向扩展通过全局命名空间,可以实现系统的灵活管理,管理具有100个节点的二级节点和管理只有1个节点的二级节点一样简单。对于可横向扩展的二级节点(发布智能体或一级节点)来说,无论其中节点的数量多么庞大,都可以将整个二级节点(发布智能体或一级节点)作为一个单一逻辑来管理。因此,对于拥有海量数据的物联网来说,被订阅方数量庞大,相应地,订阅方数量庞大,需要的发布智能体、二级节点和一级节点数量也很庞大,但是无论多么庞大,具备横向扩展能力的发布智能体、二级节点和一级节点均可以灵活管理(处理)。
本发明实施例通过将数据订阅方与被订阅方的订阅关系预先存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,以根据获取到的订阅关系进行数据的发送,随后订阅方接收。在预先存储了数据订阅方与被订阅方的订阅关系的基础上,基于二级节点处理海量数据的特点,使得本发明的数据发送方法能够支持海量数据的发送。
实施例二
本发明实施例提供了一种订阅数据的发送方法,该方法可以由数据的被订阅方,即数据的提供方来执行,为了按照本发明实施例提供的方式实现数据的订阅以及发送,本发明实施例中的服务端可以借助于集成有多种服务器的系统,订阅数据的发送与接收系统来执行操作,图2是该方法的流程图,如图2所示,该方法包括如下步骤:
步骤S201:被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系。
其中,被订阅方即数据的被订阅方,也就是数据的提供方,例如终端设备,订阅方即数据的订阅方,也就是数据的接收方,例如可以是客户端。例如,终端设备通过所述二级节点接收并存储订阅方通过所述一级节点发送的客户端与终端设备的订阅关系。
本发明实施例中,被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系,可以清晰地获取订阅方与被阅方的订阅关系并将订阅关系预先存储。
步骤S202:当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
订阅方与被订阅方的订阅关系可以是一对多的关系,即一个订阅方订阅了多个被订阅方,例如一个消费者的移动终端订阅了多家设备制造商的设备,这些设备可以在预设的时间内向该消费者的移动终端提供所订阅的内容(例如设备及设备的状态)。订阅方与被订阅方的订阅关系预先存储在二级节点(分布式数据缓存)中,基于预先存储的订阅方与被订阅方的订阅关系,被订阅方查找到订阅内容的订阅方(例如消费者的移动终端C),将订阅内容通过发布智能体发送给查找到的订阅方。
本发明实施例提供的订阅数据的发送方法,通过将数据订阅方与被订阅方的订阅关系存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,以根据获取到的订阅关系进行数据的发送,在预先存储了数据订阅方与被订阅方的订阅关系的基础上,基于二级节点处理海量数据的特点,使得本发明的数据发送方法能够支持海量数据的发送。
实施例三
在实施例二的基础上,本发明实施例在订阅数据的常规数据结构的基础上进行了改进,改进后的数据结构如图3所示,其中,31为常规数据结构,32为改进后的数据结构,服务端、订阅方、以及被订阅方之间发送的数据均使用改进后的数据的结构,改进后的数据的负载部分至少包括:设备类型编码、设备编号、数据类型编码以及数据具体内容,其中,设备类型可以用设备的型号编码来区分。
在本发明实施例中,订阅方与被订阅方的订阅关系具体可以包括以下几种:
订阅方标识与被订阅方设备类型编码之间的订阅关系、订阅方标识与被订阅方设备编码之间的订阅关系和/或订阅方标识与被订阅数据类型编码之间的订阅关系,其中,订阅方与被订阅方之间的订阅关系可以是订阅方根据订阅内容来确定,例如,当订阅方与被订阅方的订阅关系是订阅方标识与被订阅方设备类型编码之间的订阅关系时,订阅方订阅的数据是根据设备类型来进行订阅的,即,订阅方订阅了指定类型的设备的数据。
本发明实施例通过改进订阅数据的数据结构,使改进后的数据的负载至少包括设备类型编码、设备编号、数据类型编码以及数据具体内容,具体化了订阅方与被订阅方的订阅关系,订阅关系变得更灵活。
实施例四
本发明实施例提供了一种订阅数据的接收方法,该方法同样基于上述实施例一中的订阅数据的发送与接收系统来实现,该方法可以由数据的订阅方,即数据的接收方来执行,为了按照本发明实施例提供的方式实现数据的订阅以及接收,本发明实施例中的服务端可以借助于集成有多种服务器的系统,订阅数据的发送与接收系统来执行操作,图4是该方法的流程图,如图4所示,该方法包括步骤S401和步骤S402。
步骤S401:订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方。
其中,订阅方可以是物联网中的客户端(例如,移动终端),所述一级节点接收订阅方(例如,移动终端)的接收请求,将所述接收请求发送给所述发布智能体,随后订阅方将订阅关系发送给一级节点,再后一级节点将订阅关系发送给二级节点,以使得被订阅方(例如,终端设备)在获取到订阅内容时根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方(例如,移动终端)。
在本发明实施例中,一级节点接收到订阅方的接收请求时,才将所述接收请求发送给所述发布智能体,随后订阅方将订阅关系发送给一级节点,再后一级节点将订阅关系发送给二级节点,这种接收到请求后才响应并进行后续操作的模式提高了数据处理的效率,避免了接收到被订阅方的发送请求后,无需接收到订阅方的订阅请求就进行订阅关系的发送造成的资源浪费。
步骤S402:所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
由步骤S202:当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。可知,发布智能体将订阅内容发送给找到的订阅方,随后订阅方通过发布智能体接收来自被订阅方的订阅内容(例如,某个场所或者环境预设段时间内的湿度值)。例如,订阅方(例如,移动终端)通过服务端的订阅数据的发送与接收系统中的发布智能体接收来自被订阅方的订阅内容(例如,某个场所或者环境一段时间内的温湿度值)。根据接收到的温湿度值,订阅方可以获取到与该温湿度值相对应的生活舒适度,进而获知所述场所或者环境预设段时间内的生活舒适度。
本发明实施例通过一级节点接收到订阅方的接收请求时,才将所述接收请求发送给所述发布智能体,随后订阅方将订阅关系发送给一级节点,再后一级节点将订阅关系发送给二级节点,这种接收到请求后才响应并进行后续操作的模式提高了数据处理的效率;订阅方通过发布智能体接收来自被订阅方的订阅内容,充分利用了发布智能体的性能,使得处理效率进一步得到提升。
实施例五
在实施例四的基础上,本发明实施例在订阅数据的常规数据结构的基础上进行了改进,改进后的数据结构如图3所示,其中,31为常规数据结构,32为改进后的数据结构,服务端、订阅方、以及被订阅方之间发送的数据均使用改进后的数据的结构,改进后的数据的负载部分至少包括:设备类型编码、设备编号、数据类型编码以及数据具体内容,其中,设备类型可以用设备的型号编码来区分。
在本发明实施例中,订阅方与被订阅方的订阅关系具体可以包括以下几种:
订阅方标识与被订阅方设备类型编码之间的订阅关系、订阅方标识与被订阅方设备编码之间的订阅关系和/或订阅方标识与被订阅数据类型编码之间的订阅关系,其中,订阅方与被订阅方之间的订阅关系可以是订阅方根据订阅内容来确定,例如,当订阅方与被订阅方的订阅关系是订阅方标识与被订阅方设备类型编码之间的订阅关系时,订阅方订阅的数据是根据设备类型来进行订阅的,即,订阅方订阅了指定类型的设备的数据。
本发明实施例通过改进订阅数据的数据结构,使改进后的数据的负载至少包括设备类型编码、设备编号、数据类型编码以及数据具体内容,具体化了订阅方与被订阅方的订阅关系,订阅关系变得更灵活。
实施例六
上述实施例一以及实施例二分别从服务端以及客户端两端各自执行的操作来对本发明实施例提供的订阅数据的发送与接收方案进行了说明,本发明实施例则通过服务端与客户端进行信息交互完成订阅数据的发送与接收的整个过程进行说明。
图5是本发明实施例六的提供的订阅数据的发送与接收流程的信令流程图,如图5所示,该流程包括如下处理:
S1:启动终端设备M和客户端C;
S2:创建topic,名为name;
S3:客户端订阅终端设备的数据;
S4:保存终端设备M与name的订阅关系;
S5:准备发送终端设备M的数据;
S6:发送送终端设备M的数据;
S7:查找终端设备M对应的客户端C;
S8:发送终端设备M的订阅数据;
S9:客户端接收订阅数据。
订阅方客户端订阅数据时,将其name作为topic进行注册,并监听发送到此topic的数据,然后将其订阅设备与name的关联关系保存到二级节点;基于此,在发送方的客户端发送某设备数据时,根据保存的关联关系既可找到对应的订阅方客户端的name,从而找到topic,并通过topic将订阅数据传递到订阅方客户端。
在上述流程中,服务端主要实现以下功能:
在输入端,接收来自客户端的数据订阅请求;
在输出端,与二级节点交互,对数据订阅规则进行增删改查;与发布智能体交互,进行数据topic的增删改查;
在上述流程中,在客户端主要实现以下功能:客户端采用封装了物联网模型和客户端的专用的API(Application Programming Interface,应用程序编程接口)与后端进行数据的订阅和接收。
其中,专用API封装的细节包括:
客户端向服务端订阅数据时:与一级节点通信,提交客户端与被订阅方的订阅关系;与发布智能体通信,创建数据Topic,基于Topic接收数据;在终端设备发送数据时:与二级节点通信,查询终端设备与数据订阅方的订阅关系,按照订阅关系找到对应的topic;与发布智能体通信,基于Topic发送数据。
本发明实施例利用二级节点(分布式数据缓存)存储订阅者与被订阅设备之间的关系,将订阅发送规则转变为二级节点的条目,结合二级节点(分布式数据缓存)特性,无论数据量多大,对信息进行处理的算法的时间复杂度都能够以常数阶进行。
本发明实施例提供的订阅数据发送与接收的方法及装置与现有技术相比,具有以下优越性:
实时性:能够实时处理数据,支持物联网数据快速转发;高吞吐:经过测试,采用本发明实施例的方案至少可达到每秒50W数据处理能力;支持海量数据:实际使用结果显示,可长期稳定运行,处理海量数据;集群扩展性:能够根据需求,通过增减服务器提升或降低整理处理能力;稳定性:一级节点本身支持高可用,稳定性较高,客户端可借此机制获得高可用能力;贴合物联网M2M特性,以设备和用户为中心的发送机制,方便业务模块使用;低耦合性:数据发送端与数据接收端彼此透明,无需关心内部细节,降低系统耦合度。
实施例七
本发明实施例提供了一种订阅数据的发送装置,该装置可以位于被订阅方,即数据的提供方,该装置可以通过与上述实施例一中提供的订阅数据的发送与接收系统进行信息交互来实现订阅数据的发送功能,该装置用于实现上述实施例二中提供的数据发送方法,图6是该装置的结构框图,如图6所示,该装置60包括第一接收模块61和第一发送模块62,各模块的功能如下:
第一接收模块61,用于被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系。
第一发送模块62,用于当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
本发明实施例提供的订阅数据的发送装置,通过将数据订阅方与被订阅方的订阅关系存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,以根据获取到的订阅关系进行数据的发送,在预先存储了数据订阅方与被订阅方的订阅关系的基础上,基于二级节点处理海量数据的特点,使得本发明的数据发送方法能够支持海量数据的发送。
实施例八
本发明实施例提供了一种订阅数据的发送装置,该装置可以位于被订阅方,即数据的提供方,该装置可以通过与上述实施例一中提供的订阅数据的发送与接收系统进行信息交互来实现订阅数据的发送功能,该装置用于实现上述实施例三中提供的数据发送方法,图6是该装置的结构框图,如图6所示,该装置60包括第一接收模块61和第一发送模块62,各模块的功能如下:
第一接收模块61,用于被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系。
第一发送模块62,用于当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
在本发明实施例中服务端、订阅方、以及被订阅方之间发送的数据至少包括:设备类型编码、设备编号、数据类型编码以及数据具体内容。
其中,订阅方与被订阅方的订阅关系具体可以包括以下几种:
订阅方标识与被订阅方设备类型编码之间的订阅关系、订阅方标识与被订阅方设备编码之间的订阅关系和/或订阅方标识与被订阅数据类型编码之间的订阅关系。
本发明实施例通过改进订阅数据的数据结构,使改进后的数据的负载至少包括设备类型编码、设备编号、数据类型编码以及数据具体内容,具体化了订阅方与被订阅方的订阅关系,订阅关系变得更灵活。
实施例九
本发明实施例提供了一种订阅数据的发送装置,该装置可以位于被订阅方,即数据的提供方,该装置可以通过与上述实施例一中提供的订阅数据的发送与接收系统进行信息交互来实现订阅数据的发送功能,该装置用于实现上述实施例二中提供的数据发送方法,图6是该装置的结构框图,如图6所示,该装置60包括第一接收模块61和第一发送模块62,各模块的功能如下:
第一接收模块61,用于被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系。
第一发送模块62,用于当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
进一步的,上述装置60还可以包括:注册模块63,用于在接收到订阅请求时,将发送订阅请求的订阅方的标识作为topic在数据队列中注册;保存模块64,用于建立订阅方的标识与被订阅方的订阅关系,将建立的订阅关系保存到二级节点;基于此,上述第一发送模块62具体用于:根据订阅关系,查找到订阅方客户端的标识,根据查找到的标识查找对应的topic,通过查找到的topic将数据发送至订阅方。
本发明实施例提供的订阅数据的接收装置,通过将数据订阅方与被订阅方的订阅关系存储到二级节点中,在数据发送时,可以直接从二级节点中获取订阅关系,根据订阅关系,查找到订阅方客户端的标识,根据查找到的标识查找对应的topic,通过查找到的topic将数据发送至订阅方,精确且效率高,使得本发明的数据发送方法能够支持海量数据的发送。
实施例十
本发明实施例提供了一种订阅数据的接收装置,该装置可以设置于订阅方,即订阅数据的接收方,该装置通过与上述实施例一中的订阅数据的发送与接收系统进行信息交互实现订阅数据的接收功能,该装置用于实现上述实施例四中提供的订阅数据的接收方法,图7该装置的结构框图,如图7所示,该装置70包括第二发送模块71和第二接收模块72,各个模块的功能如下:
第二发送模块71,用于通过所述订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方。
第二接收模块72,用于所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
在本发明实施例中,一级节点接收到订阅方的接收请求时,才将所述接收请求发送给所述发布智能体,随后订阅方将订阅关系发送给一级节点,再后一级节点将订阅关系发送给二级节点,这种接收到请求后才响应并进行后续操作的模式提高了数据处理的效率,避免了接收到被订阅方的发送请求后,无需接收到订阅方的订阅请求就进行订阅关系的发送造成的资源浪费。
实施例十一
本发明实施例提供了一种订阅数据的接收装置,该装置可以设置于订阅方,即订阅数据的接收方,该装置通过与上述实施例一中的订阅数据的发送与接收系统进行信息交互实现订阅数据的接收功能,该装置用于实现上述实施例五中提供的订阅数据的接收方法,图7该装置的结构框图,如图7所示,该装置70包括第二发送模块71和第二接收模块72,各个模块的功能如下:
第二发送模块71,用于通过所述订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方。
第二接收模块72,用于所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
在本发明实施例中,订阅方、被订阅方、以及系统之间发送的数据至少包括:设备类型编码、设备编号、数据类型编码以及数据具体内容。
其中,订阅方与被订阅方的订阅关系,包括:订阅方标识与被订阅方设备类型编码之间的订阅关系、订阅方标识与被订阅方设备编码之间的订阅关系和/或订阅方标识与被订阅数据类型编码之间的订阅关系。
本发明实施例通过改进订阅数据的数据结构,使改进后的数据的负载至少包括设备类型编码、设备编号、数据类型编码以及数据具体内容,具体化了订阅方与被订阅方的订阅关系,订阅关系变得更灵活。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
应当理解的是,本文中虽然使用术语第一、第二等描述各个元件,但是这些元件应该不受这些术语的限制。这些术语仅被用于彼此区分元件。例如,第第一发送模块也可以称之为第二发送模块,第二发送模块也可被称之为第一发送模块而不脱离本发明的范围。第一发送模块和第二发送模块是两个获取模块,但是它们不是相同的发送模块。还应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应该理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
应当理解的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明实施例各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种订阅数据的发送方法,其特征在于,应用于订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的发送方法包括:
被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被订阅方的订阅关系;
当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
2.根据权利要求1所述的订阅数据的发送方法,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
3.一种订阅数据的接收方法,其特征在于,应用于所述订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的接收方法,包括:
订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
4.根据权利要求3所述的订阅数据的接收方法,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
5.一种订阅数据的发送装置,其特征在于,该装置使用所述订阅数据的发送与接收系统实现数据的发送,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,包括:
第一接收模块,用于被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系;
第一发送模块,用于当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方。
6.根据权利要求5所述的装置,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
7.一种订阅数据的接收装置,其特征在于,该装置使用所述订阅数据的发送与接收系统实现数据的接收,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,包括:
第二发送模块,用于通过所述订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
第二接收模块,用于所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
8.根据权利要求7所述的装置,其特征在于,所述订阅内容至少包括:
设备类型编码、设备编号、数据类型编码以及数据具体内容。
9.一种订阅数据的发送与接收的方法,其特征在于,应用于订阅数据的发送与接收的系统,所述订阅数据的发送与接收的系统包括一级节点、发布智能体以及二级节点,所述订阅数据的发送与接收方法包括:
被订阅方通过所述二级节点接收并存储订阅方通过所述一级节点发送的订阅方与被阅方的订阅关系;
订阅方通过所述一级节点将订阅方与被订阅方的订阅关系发送至所述二级节点,使所述被订阅方在获取到订阅内容时,根据所述二级节点接收到的所述订阅关系查找所述订阅内容的订阅方;
当所述被订阅方获取到订阅内容时,所述被订阅方根据所述订阅方与被订阅方的订阅关系查找到所述订阅内容的订阅方,将所述订阅内容通过所述发布智能体发送给查找到的订阅方;
所述订阅方接收所述被订阅方在查找到所述订阅内容的订阅方后通过所述发布智能体发送的订阅内容。
10.一种订阅数据的发送与接收的系统,其特征在于,包括:一级节点、发布智能体以及二级节点;
所述一级节点用于接收订阅方的接收请求以及被订阅方的发送请求,将所述接收请求以及所述发送请求发送给所述发布智能体;
所述一级节点还用于接收所述订阅方发送的订阅方与被订阅方的订阅关系,将所述订阅关系发送给所述二级节点;
所述一级节点还用于接收所述被订阅方查询所述订阅关系的查询请求,根据所述查询请求从所述二级节点获取所述订阅关系后将所述订阅关系发送给所述被订阅方;
所述发布智能体用于通过所述一级节点获知所述订阅方的接收请求,以及通过所述一级节点获知所述被订阅方的发送请求,根据所述接收请求创建用于接收被订阅方数据的topic,以及根据所述发送请求通过topic发送数据;所述数据为与所述订阅关系对应的订阅内容;
所述二级节点用于存储所述订阅关系。
CN201710461460.8A 2017-06-16 2017-06-16 订阅数据的发送、接收方法、装置及系统 Pending CN107426300A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710461460.8A CN107426300A (zh) 2017-06-16 2017-06-16 订阅数据的发送、接收方法、装置及系统
PCT/CN2017/093368 WO2018227695A1 (zh) 2017-06-16 2017-07-18 订阅数据的发送、接收方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710461460.8A CN107426300A (zh) 2017-06-16 2017-06-16 订阅数据的发送、接收方法、装置及系统

Publications (1)

Publication Number Publication Date
CN107426300A true CN107426300A (zh) 2017-12-01

Family

ID=60428846

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710461460.8A Pending CN107426300A (zh) 2017-06-16 2017-06-16 订阅数据的发送、接收方法、装置及系统

Country Status (2)

Country Link
CN (1) CN107426300A (zh)
WO (1) WO2018227695A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108289118A (zh) * 2017-12-12 2018-07-17 北京奇艺世纪科技有限公司 一种分布式消息流的管理方法和装置
CN109379353A (zh) * 2018-10-08 2019-02-22 北京科东电力控制系统有限责任公司 数据采集方法及装置
CN110659292A (zh) * 2019-09-21 2020-01-07 北京海致星图科技有限公司 一种基于Spark和Ignite的分布式实时图构建和查询的方法及系统
CN112527521A (zh) * 2020-12-03 2021-03-19 中国联合网络通信集团有限公司 消息处理方法及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104617666A (zh) * 2015-01-14 2015-05-13 国家电网公司 一种采用发布订阅通讯模型的配电网数据传输方法
CN106101178A (zh) * 2016-05-30 2016-11-09 海尔优家智能科技(北京)有限公司 一种订阅消息分发、接收方法、装置及相关系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106230896B (zh) * 2016-07-18 2019-09-03 深圳国泰安教育技术有限公司 一种消息推送方法、装置及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104617666A (zh) * 2015-01-14 2015-05-13 国家电网公司 一种采用发布订阅通讯模型的配电网数据传输方法
CN106101178A (zh) * 2016-05-30 2016-11-09 海尔优家智能科技(北京)有限公司 一种订阅消息分发、接收方法、装置及相关系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108289118A (zh) * 2017-12-12 2018-07-17 北京奇艺世纪科技有限公司 一种分布式消息流的管理方法和装置
CN109379353A (zh) * 2018-10-08 2019-02-22 北京科东电力控制系统有限责任公司 数据采集方法及装置
CN110659292A (zh) * 2019-09-21 2020-01-07 北京海致星图科技有限公司 一种基于Spark和Ignite的分布式实时图构建和查询的方法及系统
CN112527521A (zh) * 2020-12-03 2021-03-19 中国联合网络通信集团有限公司 消息处理方法及设备
CN112527521B (zh) * 2020-12-03 2023-07-04 中国联合网络通信集团有限公司 消息处理方法及设备

Also Published As

Publication number Publication date
WO2018227695A1 (zh) 2018-12-20

Similar Documents

Publication Publication Date Title
CN107426300A (zh) 订阅数据的发送、接收方法、装置及系统
CN104699718B (zh) 用于快速引入业务数据的方法和装置
CN106713018A (zh) 消息队列业务数据调度及消息队列的实现方法
CN106714082A (zh) 群组通信的方法及群组服务器
CN106453536B (zh) 一种网络请求处理方法、服务器和系统
CN109376004A (zh) 基于集群计算的数据批处理方法、装置、电子设备及介质
CN102999562B (zh) 路由查询结果
CN104704794B (zh) 用于代理在内容中心网络和互联网域之间的通信的方法
US20080249994A1 (en) System and process for server side stateless data interchange
CN106101178A (zh) 一种订阅消息分发、接收方法、装置及相关系统
CN107798038A (zh) 数据响应方法及数据响应设备
CN104967686B (zh) 一种构建面型3s智慧服务商店系统及其设计方法
CN101820381A (zh) 一种业务路由的方法,系统和装置
CN107682397A (zh) 客户资源获取方法、装置、终端设备及存储介质
CN104335524B (zh) 用于客户端侧页面处理的公共web可访问数据存储
CN106775486A (zh) 数据访问系统、方法及路由服务器、配置中心服务器
US9396448B2 (en) Distributed and open schema interactions management system and method
TW200532480A (en) Dynamic late binding of third party on demand services in an on-demand infrastructure
JP2003333182A (ja) 電気通信網における方法と装置
CN109785042A (zh) 分布式部署的异常处理方法、服务器、存储介质及装置
CN107862352A (zh) 一种二维码分享方法及二维码分享设备
CN104660997B (zh) 面向服务的多源异构视频监控适配方法和系统
CN107665237A (zh) 数据结构分类装置、非结构化数据的发布订阅系统及方法
CN106713428A (zh) 应用于物联网自管理平台的业务运营支撑系统
CN109241384A (zh) 一种科研信息的可视化方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20171201

RJ01 Rejection of invention patent application after publication