消息去重方法、装置、电子设备、介质和无人车制造方法及图纸

技术编号:20081548 阅读:66 留言:0更新日期:2019-01-15 02:47
本发明专利技术实施例公开了一种基于分布式系统的消息去重方法、装置、电子设备、介质和无人机,该方法包括:订阅节点基于所述分布式系统中与订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系;依据所述节点关系,确定与每个发布节点之间的通信方式;根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,可以根据注册内容中指定在某一通信方式下接收来自于哪一个发布节点的业务消息,将业务消息发送至对应的订阅节点,避免订阅节点接收到相同的重复消息。

Message de-duplication methods, devices, electronic equipment, media and unmanned vehicles

The embodiment of the present invention discloses a message duplication method, device, electronic device, medium and UAV based on distributed system, which includes: subscriber node determines the node relationship with each publishing node based on the attribute information of the publishing node in the distributed system and the subscribing node belonging to the same subject; and according to the node relationship, determines the node relationship with each publishing node. According to the communication mode, the management modules corresponding to different communication modes are registered separately so that after receiving the business messages from the publishing node, the management module can determine which subscribers to send the business messages according to the registered content and the unique identification of the publishing node carried in the business messages. The content specifies which publishing node receives the business message under a certain communication mode, and sends the business message to the corresponding subscribing node to avoid the subscribing node receiving the same duplicate message.

【技术实现步骤摘要】
消息去重方法、装置、电子设备、介质和无人车
本专利技术实施例涉及计算机
,尤其涉及一种基于分布式系统的消息去重方法、装置、电子设备、介质和无人车。
技术介绍
目前无人车多采用基于主题的发布和订阅模式进行通信。为了提高数据传输的效率,一般会采取自适应的通信方式。比如对于同一进程内的通信,可以直接传递指针;对于同主机跨进程通信,则可以借助共享内存方式。不同的通信方式是隔离的,这就导致在某种情况下,订阅者会重复收到来自同一发布者的消息,比如同一订阅者会通过进程内的指针方式和跨进程的读取共享内存方式,两次接收到同一发布者的消息,导致同一消息的重复接收,造成资源浪费。
技术实现思路
本专利技术实施例提供一种基于分布式系统的消息去重方法、装置、电子设备、介质和无人车,解决了消息重复接收的问题。第一方面,本专利技术实施例提供了一种基于分布式系统的消息去重方法,应用于分布式系统中的订阅节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述方法包括:订阅节点基于所述分布式系统中与所述订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;依据所述节点关系,确定与每个发布节点之间的通信方式;根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第二方面,本专利技术实施例提供了一种基于分布式系统的消息去重方法,应用于分布式系统中的发布节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述方法包括:发布节点基于所述分布式系统中与所述发布节点属于相同主题下的订阅节点的属性信息,确定与每个订阅节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;依据所述节点关系,确定与各订阅节点之间的通信方式;基于不同的通信方式,将业务消息发送至与各通信方式对应的管理模块,其中,所述业务消息中至少携带有发布节点唯一标识,以便所述管理模块依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第三方面,本专利技术实施例提供了一种基于分布式系统的消息去重方法,应用于分布式系统中的管理模块,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述方法包括:接收来自各发布节点的业务消息,其中,所述业务消息中至少携带有发布节点唯一标识和消息主题;依据所述消息主题确定该主题下的订阅节点集合;在所述订阅节点集合中,依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给订阅节点集合中的哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第四方面,本专利技术实施例还提供了一种基于分布式系统的消息去重装置,配置于分布式系统中的订阅节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述装置包括:节点关系确定模块,用于基于所述分布式系统中与订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;通信方式确定模块,用于依据所述节点关系,确定与每个发布节点之间的通信方式;管理模块注册模块,用于根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第五方面,本专利技术实施例还提供了一种基于分布式系统的消息去重装置,配置于分布式系统中的发布节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述装置包括:节点关系确定模块,用于基于所述分布式系统中与发布节点属于相同主题下的订阅节点的属性信息,确定与每个订阅节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;通信方式确定模块,用于依据所述节点关系,确定与各订阅节点之间的通信方式;业务消息发送模块,用于基于不同的通信方式,将业务消息发送至与各通信方式对应的管理模块,其中,所述业务消息中至少携带有发布节点唯一标识,以便所述管理模块依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第六方面,本专利技术实施例还提供了一种基于分布式系统的消息去重装置,配置于分布式系统中的管理模块,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,所述装置包括:业务消息接收模块,用于接收来自各发布节点的业务消息,其中,所述业务消息中至少携带有发布节点唯一标识和消息主题;节点集合确定模块,用于依据所述消息主题确定该主题下的订阅节点集合;业务消息传输模块,用于在所述订阅节点集合中,依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给订阅节点集合中的哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。第七方面,本专利技术实施例还提供了一种电子设备,所述电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例应用于分布式系统中的订阅节点的一种基于分布式系统的消息去重方法。第八方面,本专利技术实施例还提供了一种电子设备,所述电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例应用于分布式系统中的发布节点的一种基于分布式系统的消息去重方法。第九方面,本专利技术实施例还提供了一种电子设备,所述电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例应用于分布式系统中的管理模块的一种基于分布式系统的消息去重方法。第十方面,本本文档来自技高网...

【技术保护点】
1.一种基于分布式系统的消息去重方法,应用于分布式系统中的订阅节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,其特征在于,所述方法包括:订阅节点基于所述分布式系统中与所述订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;依据所述节点关系,确定与每个发布节点之间的通信方式;根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于指定在某一通信方式下接收来自于哪一个发布节点的业务消息。

【技术特征摘要】
1.一种基于分布式系统的消息去重方法,应用于分布式系统中的订阅节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,其特征在于,所述方法包括:订阅节点基于所述分布式系统中与所述订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;依据所述节点关系,确定与每个发布节点之间的通信方式;根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于指定在某一通信方式下接收来自于哪一个发布节点的业务消息。2.根据权利要求1所述的方法,其特征在于,所述发布节点的属性信息包括发布节点名、所属的子系统、所在的进程名和/或所属的主机名。3.一种基于分布式系统的消息去重方法,应用于分布式系统中的发布节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,其特征在于,所述方法包括:发布节点基于所述分布式系统中与所述发布节点属于相同主题下的订阅节点的属性信息,确定与每个订阅节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;依据所述节点关系,确定与各订阅节点之间的通信方式;基于不同的通信方式,将业务消息发送至与各通信方式对应的管理模块,其中,所述业务消息中至少携带有发布节点唯一标识,以便所述管理模块依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。4.一种基于分布式系统的消息去重方法,应用于分布式系统中的管理模块,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,其特征在于,所述方法包括:接收来自各发布节点的业务消息,其中,所述业务消息中至少携带有发布节点唯一标识和消息主题;依据所述消息主题确定该主题下的订阅节点集合;在所述订阅节点集合中,依据各订阅节点预先注册的内容和所述发布节点唯一标识,确定将所述业务消息发送给订阅节点集合中的哪些订阅节点,其中,所述注册内容用于订阅节点指定在某一通信方式下接收来自于哪一个发布节点的业务消息。5.一种基于分布式系统的消息去重装置,配置于分布式系统中的订阅节点,所述分布式系统中包括至少两个子系统,该至少两个子系统之间包括属于同主机和不同主机两种情形,各子系统中包括至少一个节点,该至少一个节点订阅或者发布基于主题的业务消息,其特征在于,所述装置包括:节点关系确定模块,用于基于所述分布式系统中与订阅节点属于相同主题下的发布节点的属性信息,确定与每个发布节点之间的节点关系,其中,所述节点关系包括进程内、跨进程或跨主机;通信方式确定模块,用于依据所述节点关系,确定与每个发布节点之间的通信方式;管理模块注册模块,用于根据所述通信方式,分别向不同通信方式对应的管理模块进行注册,以便所述管理模块在接收来自发布节点的业务消息后,依据注册内容和所述业务消息中携带的发布节点唯一标识,确定将所述...

【专利技术属性】
技术研发人员:倪忠俊姚卫锋夏黎明辛建康邓呈亮陈卓
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

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

1