设备消息订阅方法、装置、设备及存储介质制造方法及图纸

技术编号:38072662 阅读:16 留言:0更新日期:2023-07-06 08:41
本申请涉及一种设备消息订阅方法、装置、设备及存储介质,应用在物联网设备消息订阅领域,其中方法包括:接收待发布消息;对所述待发布消息进行过滤处理,得到过滤结果;根据所述过滤结果将所述待发布消息发送至订阅端。本申请具有的技术效果是:有效地降低基于MQTT协议的物联网消息订阅系统中服务器的负载。的物联网消息订阅系统中服务器的负载。的物联网消息订阅系统中服务器的负载。

【技术实现步骤摘要】
设备消息订阅方法、装置、设备及存储介质


[0001]本申请涉及物联网设备消息订阅的
,尤其是涉及一种设备消息订阅方法、装置、设备及存储介质。

技术介绍

[0002]物联网是新一代信息技术的重要组成部分,特指物物相连的网络。具体来说,物联网是指通过各种信息传感设备,如传感器、射频识别(RFID)技术、全球定位消息订阅系统、红外感应器、激光扫描器、气体感应器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,与互联网结合形成的一个巨大网络。物联网目的是实现物与物、物与人、所有的物品与网络的连接,以方便识别、管理和控制。物联网包括应用、应用基础架构(Application Infrastructure)、广域网(Wide Area Network)、接入网络(Access Network)和传感网络(Sensor Network),传感网络由多个传感器设备构成,传感器设备从外界收集数据信息,通过广域网传输到应用基础架构。应用基础架构包括信息数据库和应用网关(Application gateway)。信息数据库用于存储所获得的信息,应用网关(application gateway)用于数据的过滤和发布(publish)。应用可以向应用网关发出请求以获取其需要的信息,即订阅(subscribe)。
[0003]目前基于MQTT协议的物联网消息订阅系统消息发布/订阅方法被广泛地应用,MQTT是一种基于主题发布/订阅的轻量级消息传输协议,具有开销小、及时性好、可靠性高等优势。
[0004]在实现本申请的过程中,专利技术人发现该技术中至少存在如下问题:在MQTT基本结构中,订阅方只订阅自己感兴趣的主题而不去理解消息的内部结构,订阅方不能更细粒度地表达对部分内容的消息感兴趣,表达能力较弱,而消息代理会将该主题下所有的消息都推送给订阅方,会造成很多无用消息的推送,致使网络拥塞,增加服务器的负载和通信带宽。

技术实现思路

[0005]为了有效地降低基于MQTT协议的物联网消息订阅系统中服务器的负载,本申请提供的一种设备消息订阅方法、装置、设备及存储介质。
[0006]第一方面,本申请提供一种设备消息订阅方法,采用如下的技术方案:所述方法包括:接收待发布消息;对所述待发布消息进行过滤处理,得到过滤结果;根据所述过滤结果将所述待发布消息发送至订阅端。
[0007]通过上述技术方案,消息订阅系统位于发布方与订阅方之间的数据传输路径上,接收发布方发送的待发布消息,对该待发布消息进行过滤处理,再将经过过滤处理后的待发布消息发送至订阅方,使得过滤后的消息形成某一主题进行消息发布,所有订阅了该主
题的订阅方都将收到该消息,消息订阅系统将基于内容进行发布消息都给予特定的主题,通过消息过滤器完成消息内容的过滤、主题的转化及消息的推送。消息不再依赖于主题进行分类,而是按照消息的内容本身分类,订阅方可以根据自己的需求,有选择性地表达订阅信息,不必受消息订阅系统预先定义主题的限制。尽量避免无用消息的推送,降低通信带宽,使通信更加灵活高效。
[0008]在一个具体的可实施方案中,在所述接收待发布消息之前,还包括:接收连接请求消息;向所述订阅端返回连接确认消息;接收订阅请求;解析所述订阅请求,得到请求内容;根据所述请求内容更新订阅表以及路由表;向所述订阅端返回订阅确认消息。
[0009]通过上述技术方案,订阅方首先与消息订阅系统建立数据传输通路,若是数据传输通路建立成功,订阅方会将用户的订阅请求发送至消息订阅系统,订阅请求中包括用于感兴趣的主题,消息订阅系统根据接收到的订阅请求更新自身的订阅表以及路由器,并向订阅方反馈一个订阅确认消息,告知订阅者订阅成功,实现了订阅者能够根据自身的兴趣内容,有选择性地表达订阅信息的效果。
[0010]在一个具体的可实施方案中,所述对所述待发布消息进行过滤处理,得到过滤结果,具体包括:从所述订阅表中获取请求内容;将所述请求内容转化为约束条件;将每个约束条件以及对应主题的映射关系存储至预设的映射表中;获取映射表中的所有约束条件;采用预设的匹配算法将所述待发布消息与所述约束条件进行匹配,得到所述待发布消息匹配的约束条件。
[0011]通过上述技术方案,消息订阅系统在获取到发布方发送的待发布消息后,会获取订阅表中所有约束条件,将获取到的待发布消息与订阅表中的约束条件进行匹配,使得待发布消息最终以匹配后的约束条件所对应的主题进行消息发布,达到了所有订阅了该主题的订阅方均能够接收到该消息。
[0012]在一个具体的可实施方案中,所述采用预设的匹配算法将所述待发布消息与所述约束条件进行匹配,得到所述待发布消息匹配的约束条件,具体包括:对所述约束条件进行预处理,得到约束条件列表,所述约束条件列表包括若干约束条件对应的约束条件链表,所述约束条件链表包括若干属性匹配单元;对所述待发布消息进行预处理,得到若干消息匹配单元;创建属性列表,所述属性列表与约束条件链表一一对应;遍历所述约束条件列表中的每个约束条件链表;根据所述约束条件链表查找对应的属性匹配单元;计算所述约束条件链表中的属性匹配单元的数量,设为属性单元数量;计算所述待发布消息中消息匹配单元的数量,设为消息单元数量;
将所述属性单元数量与所述消息单元数量进行对比;若所述属性单元数量与所述消息单元数量不一致,则将所述属性匹配单元中的属性匹配结果的逻辑值设为假;将约束条件链表中的属性值对以及对应的属性匹配结果存储至属性列表;根据所述属性列表中的属性匹配结果进行再匹配,得到实际匹配结果;若实际匹配结果的逻辑值为真,则将所述约束条件添加至预设的匹配成功列表。
[0013]通过上述技术方案,消息订阅系统对订阅表中的约束条件进行预处理,得到约束条件对应的约束条件列表,将约束条件列表中的每一个约束条件链表中的属性匹配单元的数量与待发布消息中的消息匹配单元的数量进行比较,只有在两者的数量保持一致的情况下,消息订阅系统才会继续执行匹配工作,因为,一旦两者的数量不一致,即可说明约束条件与待发布消息的内容不一致,不需要再进行内容匹配,这样有助于消息订阅系统减少无效的工作,提升自身的运行速度,。
[0014]在一个具体的可实施方案中,在所述将所述属性单元数量与所述消息单元数量进行对比之后,还包括:若所述属性单元数量与所述消息单元数量一致,则依次将查找到的属性匹配单元中的属性值对与消息匹配单元进行匹配;一旦属性值对与待发布消息不一致,则将剩余属性匹配中的属性匹配结果设为假。
[0015]通过上述技术方案,消息订阅系统将约束条件列表中的每一个约束条件链表中的若干属性值对与待发布消息中的内容进行匹配,得到对应的属性匹配结果,并将得到的属性匹配结果对应存储至约束条件列表中,消息订阅系统按照属性匹配结果进行再一次的匹配,得到实际匹配结果,若是再次匹配成功,那么消息订阅系统将该实际匹配结果对应的约束条件添加至预设的匹配成功列表,达到了消息订阅系统根据待发布消息的内本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种设备消息订阅方法,其特征在于,所述方法包括:接收待发布消息;对所述待发布消息进行过滤处理,得到过滤结果;根据所述过滤结果将所述待发布消息发送至订阅端。2.根据权利要求所述的方法,其特征在于,在所述接收待发布消息之前,还包括:接收连接请求消息;向所述订阅端返回连接确认消息;接收订阅请求;解析所述订阅请求,得到请求内容;根据所述请求内容更新订阅表以及路由表;向所述订阅端返回订阅确认消息。3.根据权利要求1所述的方法,其特征在于,所述对所述待发布消息进行过滤处理,得到过滤结果,具体包括:从所述订阅表中获取请求内容;将所述请求内容转化为约束条件;将每个约束条件以及对应主题的映射关系存储至预设的映射表中;获取映射表中的所有约束条件;采用预设的匹配算法将所述待发布消息与所述约束条件进行匹配,得到所述待发布消息匹配的约束条件。4.根据权利要求3所述的方法,其特征在于,所述采用预设的匹配算法将所述待发布消息与所述约束条件进行匹配,得到所述待发布消息匹配的约束条件,具体包括:对所述约束条件进行预处理,得到约束条件列表,所述约束条件列表包括若干约束条件对应的约束条件链表,所述约束条件链表包括若干属性匹配单元;对所述待发布消息进行预处理,得到若干消息匹配单元;创建属性列表,所述属性列表与约束条件链表一一对应;遍历所述约束条件列表中的每个约束条件链表;根据所述约束条件链表查找对应的属性匹配单元;计算所述约束条件链表中的属性匹配单元的数量,设为属性单元数量;计算所述待发布消息中消息匹配单元的数量,设为消息单元数量;将所述属性单元数量与所述消息单元数量进行对比;若所述属性单元数量与所述消息单元数量不一致,则将所述属性匹配单元中的属性匹配结果的逻辑值设为假;将约束条件链表中的属性值对以及对应的属性匹配结果存储至属性列表;根据所述属性列表中的属性匹配结果进行...

【专利技术属性】
技术研发人员:芮建秋刘俊张春梅施骏成程传节瞿震金长辉
申请(专利权)人:苏州智能交通信息科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1