CN115296943B - 一种消息广播方法、装置、服务器和存储介质 - Google Patents

一种消息广播方法、装置、服务器和存储介质 Download PDF

Info

Publication number
CN115296943B
CN115296943B CN202210842282.4A CN202210842282A CN115296943B CN 115296943 B CN115296943 B CN 115296943B CN 202210842282 A CN202210842282 A CN 202210842282A CN 115296943 B CN115296943 B CN 115296943B
Authority
CN
China
Prior art keywords
message
broadcast
broadcasted
broadcasting
task
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
Application number
CN202210842282.4A
Other languages
English (en)
Other versions
CN115296943A (zh
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.)
Hangzhou Qulian Technology Co Ltd
Original Assignee
Hangzhou Qulian 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 Hangzhou Qulian Technology Co Ltd filed Critical Hangzhou Qulian Technology Co Ltd
Priority to CN202210842282.4A priority Critical patent/CN115296943B/zh
Publication of CN115296943A publication Critical patent/CN115296943A/zh
Application granted granted Critical
Publication of CN115296943B publication Critical patent/CN115296943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请涉及数据通信技术领域,尤其涉及一种消息广播方法、装置、服务器和存储介质。该方法包括:接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;基于所述广播任务,向所述目标应用广播所述待广播消息。采用该方法可实现一对多通信,同时还可实现没有直接关联的节点之间的通信,保障应用消息广播的安全性的同时,实现了应用消息的集群广播,从而提高通信的效率。

Description

一种消息广播方法、装置、服务器和存储介质
技术领域
本申请涉及数据通信技术领域,尤其涉及一种消息广播方法、装置、服务器和存储介质。
背景技术
随着服务器应用领域的不断发展,高端服务器的应用需求已经进入了一个重要阶段。对于大规模的多节点网络系统,需要一种高可靠的通信机制保证其高效稳定地运行。
现有技术中,应用之间是一对一通信,只有两个连接的应用可以相互通信,通信效率低,如何保障广播消息的安全性的同时,实现应用消息的集群广播,是当前需要考虑的问题。
发明内容
有鉴于此,本申请实施例提供了一种消息广播方法、装置、服务器和存储介质,可保障广播消息的安全性,并实现一对多的广播通信,实现应用消息的集群广播,提高节点通信的效率。
本申请实施例的第一方面提供了一种消息广播方法,包括:
接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;
确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;
基于所述广播任务,向所述目标应用广播所述待广播消息。
在第一方面的一种可能的实现方式中,所述确定所述待广播消息对应的广播任务,包括:
当所述待广播消息包括所述第一待广播消息时,获取所述第一待广播消息的第一关键值,所述第一关键值包括所述第一待广播消息的消息类型,以及发送所述第一待广播消息的应用对应的应用标识;
根据所述第一关键值,确定所述第一待广播消息的消息版本;
根据所述目标应用标识、所述第一关键值以及所述第一待广播消息的消息版本,确定所述第一待广播消息对应的第一广播任务。
在第一方面的一种可能的实现方式中,所述确定所述待广播消息对应的广播任务,包括:
当所述待广播消息包括所述第二待广播消息时,获取所述第二待广播消息的第二关键值及消息版本,所述第二关键值包括所述第二待广播消息的消息类型,以及发送所述第二待广播消息的应用标识;
根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务。
在第一方面的一种可能的实现方式中,所述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
根据所述第二待广播消息的所述第二关键值及消息版本,判断所述本节点是否首次收到所述第二待广播消息;
若所述本节点非首次收到所述第二待广播消息,则在所述本节点中查找所述第二待广播消息对应的第二广播任务;
更新所述第二广播任务中所述第二待广播消息的待广播次数。
在第一方面的一种可能的实现方式中,所述第二待广播消息携带第二目标协议标识,所述方法还包括:
若所述本节点首次收到所述第二待广播消息,则将所述第二待广播消息发送至所述本节点中所述第二目标协议标识对应的应用进行处理。
在第一方面的一种可能的实现方式中,所述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
根据所述第二待广播消息的所述第二关键值及消息版本,确定所述本节点是否存在所述第二待广播消息对应的第二广播任务;
若所述本节点存在所述第二广播任务,则判断所述第二广播任务中的待广播次数是否与所述第二待广播消息携带的预期广播次数相同;
若所述待广播次数小于所述预期广播次数,则更新所述第二广播任务中的待广播次数。
在第一方面的一种可能的实现方式中,所述待广播消息还携带广播范围,所述基于所述广播任务,向所述目标应用广播所述待广播消息,包括:
根据所述目标协议标识,确定目标应用;
根据所述广播范围与所述目标应用,确定目标节点,所述目标节点具体为与所述本节点连接的节点中运行有所述目标应用的节点;
基于所述广播任务,向所述目标节点广播所述待广播消息。
本申请实施例的第二方面提供了一种消息广播装置,所述装置包括:
消息接收单元,用于接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;
广播任务确定单元,用于确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;
消息广播单元,用于基于所述广播任务,向所述目标应用广播所述待广播消息。
本申请实施例的第三方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例的第一方面提供的消息广播方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本申请实施例的第一方面提供的消息广播方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行本申请实施例的第一方面所述的消息广播方法的步骤。
本申请实施例中,通过接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息谢携带目标协议标识,然后确定该待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识,再基于所述广播任务,向所述目标应用广播所述待广播消息。本申请方案可将本节点上的应用需要广播的消息广播至其它节点,实现一对多通信,同时还可将非本节点上应用发送的信息再进行广播,实现没有直接关联的节点之间的通信,保障应用消息广播的安全性的同时,实现了应用消息的集群广播,可提高节点通信的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的消息广播方法的实现流程图;
图2是本申请实施例提供的消息广播方法中确定所述待广播消息对应的广播任务的一种具体实现流程图;
图3是本申请实施例提供的消息广播方法中确定所述待广播消息对应的广播任务的另一种具体实现流程图;
图4是本申请实施例提供的消息广播方法中确定所述第二待广播消息对应的第二广播任务的一种具体实现流程图;
图5是本申请实施例提供的消息广播方法中确定所述第二待广播消息对应的第二广播任务的另一种具体实现流程图;
图6是本申请实施例提供的消息广播方法中向所述目标应用广播所述待广播消息的具体实现流程图;
图7是本申请实施例提供的一种消息广播装置的结构框图;
图8是本申请实施例提供的一种服务器的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
应当理解,本申请各个方法实施例提供了一种消息广播方法适用于大规模的多节点网络系统,具体适用于需要执行消息广播的各种类型的终端设备或者服务器。
下面结合具体实施例对本申请提供的消息广播方法进行示例性的说明。
图1示出了本申请实施例提供的消息广播方法的实现流程,本实施例可应用于多节点网络系统中的任意一节点。需要说明的是,本申请不对节点的种类和数量进行任何限定。本申请实施例的执行端为服务器。该方法流程可以包括如下步骤S101至S103。
S101:接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息。
本申请实施例中,本节点可接收运行在本节点上的应用发送的第一待广播消息,同时接收运行在其它节点的应用发送的第二待广播消息。本节点是指当前执行上述消息广播方法的节点。其它节点是指同一网络系统中与本节点通信连接的任意一节点。
所述待广播消息携带目标协议标识。所述目标协议标识用于指示可处理该待广播消息的应用所使用的协议。
S102:确定所述待广播消息对应的广播任务。所述广播任务包括所述目标协议标识对应的目标应用标识。
上述目标应用是指可使用上述目标协议标识指示的协议解析待广播消息的应用。
在一种实施方式中,针对所述待广播消息携带的目标协议标识,将可解析该待广播消息的应用确定为目标应用。基于该待广播消息和目标应用,确定对应的广播任务。
本实施例中,所述广播任务包括第一广播任务和第二广播任务。具体地,针对本节点上的应用发送的所述第一待广播消息确定第一广播任务。针对其它节点上的应用发送的第二待广播消息确定第二广播任务。
作为本申请一种可能的实施方式,图2示出了本申请实施例提供的方法中,所述确定所述待广播消息对应的广播任务的一种具体实现流程,详述如下:
A1:当所述待广播消息包括所述第一待广播消息时,获取所述第一待广播消息的第一关键值,所述第一关键值包括所述第一待广播消息的消息类型,以及发送所述第一待广播消息的应用对应的应用标识。
A2:根据所述第一关键值,确定所述第一待广播消息的消息版本。
在本申请实施例中,根据上述第一关键值,从历史广播消息中查找是否存在第一关键值对应的消息,若存在,基于该第一关键值对应的消息的版本,确定所述第一待广播消息的消息版本。例如,将历史广播消息中所述第一关键值对应的消息的版本加1,得到所述第一待广播消息的消息版本。一些实施方式中,上述历史广播消息中存在多个与所述第一关键值对应的消息,选取广播时间与当前时刻最近的消息,并基于该消息的版本,确定第一待广播消息的消息版本。
A3:根据所述目标应用标识、所述第一关键值以及所述第一待广播消息的消息版本,确定所述第一待广播消息对应的第一广播任务。
上述第一广播任务包括第一待广播消息的消息版本、所述第一关键值,还包括根据第一待广播消息携带的第一目标协议标识确定的目标应用的目标应用标识。
本申请实施例中,本节点根据第一待广播消息的消息类型与发送该第一待广播消息应用的应用标识,组装得到该第一待广播消息的第一关键值,然后根据该第一关键值,确定所述第一待广播消息的消息版本,第一关键值结合消息版本,即可唯一确定该第一待广播消息,再根据第一关键值及消息版本,以及确定的目标应用标识,生成第一待广播消息对应的第一广播任务。
作为本申请一种可能的实施方式,图3示出了本申请实施例提供的方法实施例中,所述确定所述待广播消息对应的广播任务的另一种具体实现流程,详述如下:
B1:当所述待广播消息包括所述第二待广播消息时,获取所述第二待广播消息的第二关键值及消息版本,所述第二关键值包括所述第二待广播消息的消息类型,以及发送所述第二待广播消息的应用标识。
在本申请实施例中,上述其它节点根据所述第二待广播消息的消息类型、以及发送该第二待广播消息应用的应用标识,生成所述第二关键值,再基于该第二关键值确定所述第二待广播消息的消息版本。本节点可直接从上述第二待广播消息中提取所述第二待广播消息的消息类型,发送所述第二待广播消息的应用标识,以及所述第二待广播消息的消息版本。
在一种可能的实施方式中,上述其它节点发送的第二待广播消息是该其它节点上运行的应用发送的消息,还可以是与该其它节点连接的另一节点发送的消息,可实现非直接连接的节点之间消息的传送,实现集群广播,提高广播效率。
示例性地,节点1接收运行在本节点1上的应用发送的第一待广播消息,同时接收节点2发送的需要广播的第二待广播消息。该第二待广播消息既可以是运行在节点2上的应用发送的需要广播的消息,还可以是节点3发送的需要广播的消息。
B2:根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务。
具体地,根据所述目标应用标识确定需要广播的目标应用。上述第二广播任务包括第二待广播消息的消息版本、所述第二关键值,还包括根据第二待广播消息携带的第二目标协议标识确定的目标应用的目标应用标识。
本申请实施例中,本节点直接从第二待广播消息中提取该第二待广播消息的第二关键值以及消息版本,即可唯一确定该第二待广播消息,再根据第二关键值及消息版本,以及确定的目标应用标识,生成第二待广播消息对应的第二广播任务。
作为本申请一种可能的实施方式,当所述待广播消息包括所述第一待广播消息和所述第二待广播消息时,所述待广播消息对应的广播任务包括第一待广播任务和第二广播任务,具体地,根据上述步骤A1至A3,确定所述第一待广播消息对应的第一广播任务,根据上述步骤B1至B2,确定所述第二待广播消息对应的第二广播任务。
在一些实施方式中,默认上述第一广播任务的优先级高于上述第二广播任务,优先广播本节点上的应用发送的第一待广播消息。
作为本申请一种可能的实施方式,当所述待广播消息包括所述第一待广播消息和所述第二待广播消息时,若所述第一目标应用标识与所述第二目标应用标识相同,根据所述第一目标应用标识、所述第一关键值及所述第一待广播消息的消息版本,以及所述第二关键值及所述第二待广播消息的消息版本,确定所述待广播消息对应的广播任务。本实施方式中,当第一待广播消息和第二待广播消息需广播的目标应用相同时,以一个广播任务的形式,向所述目标应用广播所述待广播消息。
作为本申请一种可能的实施方式,如图4所示,上述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
B21:根据所述第二待广播消息的所述第二关键值及消息版本,判断所述本节点是否首次收到所述第二待广播消息。
在一种可能的实施方式中,获取本节点的历史广播消息列表、广播任务列表以及遗漏消息列表,所述历史广播消息列表包括已完成广播的消息的关键值及消息版本,所述广播任务列表包括存在对应广播任务的消息的关键值及消息版本,所述遗漏消息列表包括异常未接收到的消息的关键值及消息版本。根据所述第二待广播消息的所述第二关键值及消息版本,查找所述历史广播消息列表、所述广播任务列表以及所述遗漏消息列表中是否存在所述第二待广播消息。若所述历史广播消息列表、所述广播任务列表中任意一列表存在,且所述遗漏消息列表中不存在所述第二关键值及消息版本,则可确定所述本结点非首次收到所述第二待广播消息;若所述历史广播消息列表、所述广播任务列表中均查找不到所述第二关键值及消息版本,和/或,所述遗漏消息列表中存在第二关键值及消息版本,则可确定所述本结点是首次收到所述待广播消息。
在一些实施方式中,由于网络延迟、网络的不稳定等愿意,可能出现丢消息,或者先发送的消息后收到的情况,导致消息遗漏。在另一些情形中,当发送不同消息版本、相同关键值的消息的节点不同时,本节点接收到的消息版本可能存在乱序,从而存在消息遗漏的可能。将已收到的消息根据消息版本排序,根据消息版本排序的结果,确定遗漏的消息,并将遗漏的消息的关键值及消息版本存入遗漏消息列表。例如,对于相同key值的消息,本节点先收到了version为1、2、3的消息,然后收到了version为7的消息,即可确定遗漏了version为4、5、6的消息。将version为4、5、6的消息的关键值及版本存入遗漏消息列表。
B22:若所述本节点非首次收到所述第二待广播消息,则在所述本节点中查找所述第二待广播消息对应的第二广播任务。在一些实施方式中,本节点存在用于存放广播任务的广播任务列表,在所述广播任务列表中,查找是否存在所述第二待广播消息。
B23:更新所述第二广播任务中所述第二待广播消息的待广播次数。所述广播次数用于标识本节点接收到所述第二待广播消息的次数。
作为本申请一种可能的实施方式,若所述本节点首次收到所述第二待广播消息,则将所述第二待广播消息发送至所述本节点中所述第二目标协议标识对应的应用进行处理。具体地,本节点中所述第二目标协议标识对应的应用,根据所述第二待广播消息的发送方确定消息的反向解析流程,并处理所述第二待广播消息。
作为本申请一种可能的实施方式,如图5所示,所述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
C1:根据所述第二待广播消息的所述第二关键值及消息版本,确定所述本节点是否存在所述第二待广播消息对应的第二广播任务。具体地,在本节点的广播任务列表汇总查找是否存在所述第二关键值及消息版本对应的第二广播任务。
C2:若所述本节点存在所述第二广播任务,则判断所述第二广播任务中的待广播次数是否与所述第二待广播消息携带的预期广播次数相同。
上述预期广播次数用于标识消息发送方希望消息广播的次数。消息发送方即为发送所述第二待广播消息的节点。上述待广播次数标识本节点接收到所述第二待广播消息的次数。
C3:若所述待广播次数小于所述预期广播次数,则更新所述第二广播任务中的待广播次数。具体地,若所述待广播次数小于所述预期广播次数,则将所述第二广播任务中的待广播次数加1。
本实施例中,本节点只有在接收到待广播消息时,才会触发消息的广播发送。当同一待广播消息需要广播的次数大于1时,利用广播任务中的待广播次数记录收到该待广播消息的次数,再比对待广播消息携带的预期广播次数与上述待广播次数是否一致,若不一致,则表示该广播任务还未完成,更新广播任务中的待广播次数。
S103:基于所述广播任务,向所述目标应用广播所述待广播消息。
本实施例中,基于目标协议标识,确定目标应用,只有目标应用可解析所述待广播消息。
示例性地,以一个应用场景为例,网络中有10个节点,1-10号节点上运行了应用1,6-10号节点上还运行了应用2,其中应用1之间使用协议1通信,应用2之间使用协议2通信,应用1与应用2之间使用协议3通信。1号节点上运行应用1有消息要广播到其他所有节点上运行的应用1,1号节点在接收到应用1发送的消息后,基于应用1使用的协议1,将消息广播至其它9个节点,运行在其他9个节点上的应用1都会收到这个消息。由于消息通过有连接的应用双方基于各自的协议来协商的具体的通信流程,故节点1上的应用1通过协议1广播至其它节点的消息,只有使用协议1通信应用1能解析。
作为本申请一种可能的实施方式,所述待广播消息还携带广播范围,图6示出了本申请实施例提供的方法实施例中,所述基于所述广播任务,向所述目标应用广播所述待广播消息的一种具体实现流程,详述如下:
D1:根据所述目标协议标识,确定目标应用。所述目标应用即为使用所述目标协议标识的协议的应用。
D2:根据所述广播范围与所述目标应用,确定目标节点,所述目标节点具体为与所述本节点连接的节点中运行有所述目标应用的节点。
D3:基于所述广播任务,向所述目标节点广播所述待广播消息。所述目标节点上的目标应用可以解析处理所述待广播消息。而非目标应用无法解析处理所述待广播消息。
本申请实施例中,根据目标协议标识确定目标应用,再根据目标应用以及广播范围,从本节点连接的节中筛选出目标节点,通过向所述目标节点广播所述待广播消息,目标节点上的目标应用基于目标协议解析所述待广播消息。
示例性地,以一个应用场景为例,网络中有20个节点,将节点分为两类,每类各有10个节点,其中节点1-10属于A类,节点11-20属于B类,其中每类节点直接互通,节点1-5和11-15上运行了应用1和应用2,6-10和16-20上运行了应用2,其中应用1之间使用协议1通信,应用2之间使用协议2通信,应用1与应用2之间使用协议3通信。节点1上的应用2有一个消息需要广播给A类节点上运行的应用2,通过本实施例提供的消息广播方法,只有1-10号节点上的应用2能收到解析此消息。
在一种可能的实施方式中,将所述广播任务加入本节点的广播任务列表,基于所述广播任务列表中广播任务的排序,将所述待广播消息加入消息发送列表,基于所述消息发送列表发送所述待广播消息。
在一种可能的实施方式中,在完成该待广播消息的发送之后,从所述消息发送列表移除该待广播消息,并判断所述待广播消息对应的广播任务中的待广播次数是否与该待广播消息携带的预期广播次数是否一致,若一致,即可确认该广播任务已完成,将所述广播任务从广播任务列表中移除。
在一种可能的实施方式中,在广播任务完成后,更新历史广播消息列表中所述待广播消息对应的消息版本。
由上可见,本申请实施例中,通过接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识,然后确定该待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识,再基于所述广播任务,向所述目标应用广播所述待广播消息。本申请方案可将本节点上的应用需要广播的消息广播至其它节点,实现一对多通信,同时还可将非本节点上应用发送的信息再进行广播,实现没有直接关联的节点之间的通信,保障应用消息广播的安全性的同时,实现了应用消息的集群广播,可提高节点通信的效率。
应理解,上述各个实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的消息广播方法,图7示出了本申请实施例提供的消息广播装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图7,该装置应用于服务器,该装置包括:消息接收单元71,广播任务确定单元72,消息广播单元73,其中:
消息接收单元71,用于接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;
广播任务确定单元72,用于确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;
消息广播单元73,用于基于所述广播任务,向所述目标应用广播所述待广播消息。
作为本申请一种可能的实施方式,所述广播任务确定单元72包括:
键值获取模块,用于当所述待广播消息包括所述第一待广播消息时,获取所述第一待广播消息的第一关键值,所述第一关键值包括所述第一待广播消息的消息类型,以及发送所述第一待广播消息的应用对应的应用标识;
版本确定模块,用于根据所述第一关键值,确定所述第一待广播消息的消息版本;
第一广播任务确定模块,用于根据所述目标应用标识、所述第一关键值以及所述第一待广播消息的消息版本,确定所述第一待广播消息对应的第一广播任务。
作为本申请一种可能的实施方式,所述广播任务确定单元72包括:
关键值及版本确定模块,用于当所述待广播消息包括所述第二待广播消息时,获取所述第二待广播消息的第二关键值及消息版本,所述第二关键值包括所述第二待广播消息的消息类型,以及发送所述第二待广播消息的应用标识;
第二广播任务确定模块,用于根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务。
作为本申请一种可能的实施方式,所述第二广播任务确定模块还用于:
根据所述第二待广播消息的所述第二关键值及消息版本,判断所述本节点是否首次收到所述第二待广播消息;若所述本节点非首次收到所述第二待广播消息,则在所述本节点中查找所述第二待广播消息对应的第二广播任务;
更新所述第二广播任务中所述第二待广播消息的待广播次数。
作为本申请一种可能的实施方式,所述第二待广播消息携带第二目标协议标识,所述第二广播任务确定模块还用于:
若所述本节点首次收到所述第二待广播消息,则将所述第二待广播消息发送至所述本节点中所述第二目标协议标识对应的应用进行处理。
作为本申请一种可能的实施方式,所述第二广播任务确定模块还用于:
根据所述第二待广播消息的所述第二关键值及消息版本,确定所述本节点是否存在所述第二待广播消息对应的第二广播任务;
若所述本节点存在所述第二广播任务,则判断所述第二广播任务中的待广播次数是否与所述第二待广播消息携带的预期广播次数相同;
若所述待广播次数小于所述预期广播次数,则更新所述第二广播任务中的待广播次数。
作为本申请一种可能的实施方式,所述待广播消息还携带广播范围,所述消息广播单元73包括:
目标应用确定模块,用于根据所述目标协议标识,确定目标应用;
目标节点确定模块,用于根据所述广播范围与所述目标应用,确定目标节点,所述目标节点具体为与所述本节点连接的节点中运行有所述目标应用的节点;
消息广播模块,用于基于所述广播任务,向所述目标节点广播所述待广播消息。
由上可见,本申请实施例中,通过接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息谢携带目标协议标识,然后确定该待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识,再基于所述广播任务,向所述目标应用广播所述待广播消息。本申请方案可将本节点上的应用需要广播的消息广播至其它节点,实现一对多通信,同时还可将非本节点上应用发送的信息再进行广播,实现没有直接关联的节点之间的通信,保障应用消息广播的安全性的同时,实现了应用消息的集群广播,可提高节点通信的效率。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如图1至图6表示的任意一种消息广播方法的步骤。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在终端设备上运行时,使得终端设备执行实现如图1至图6表示的任意一种消息广播方法的步骤。
图8是本申请一实施例提供的服务器的示意图。如图8所示,该实施例的服务器8包括:处理器80、存储器81以及存储在所述存储器81中并可在所述处理器80上运行的计算机程序82。所述处理器80执行所述计算机程序82时实现上述各个消息广播方法的实施例中的步骤,例如图1所示的步骤S101至S103。或者,所述处理器80执行所述计算机程序82时实现上述各装置实施例中各模块/单元的功能,例如图7所示单元71至73的功能。
所述计算机程序82可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器81中,并由所述处理器80执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序82在所述服务器8中的执行过程。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81可以是所述服务器8的内部存储单元,例如服务器8的硬盘或内存。所述存储器81也可以是所述服务器8的外部存储设备,例如所述服务器8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述服务器8的内部存储单元也包括外部存储设备。所述存储器81用于存储所述计算机程序以及所述服务器所需的其他程序和数据。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种消息广播方法,其特征在于,包括:
接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;
确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;
基于所述广播任务,向所述目标应用广播所述待广播消息。
2.如权利要求1所述的方法,其特征在于,所述确定所述待广播消息对应的广播任务,包括:
当所述待广播消息包括所述第一待广播消息时,获取所述第一待广播消息的第一关键值,所述第一关键值包括所述第一待广播消息的消息类型,以及发送所述第一待广播消息的应用对应的应用标识;
根据所述第一关键值,确定所述第一待广播消息的消息版本;
根据所述目标应用标识、所述第一关键值以及所述第一待广播消息的消息版本,确定所述第一待广播消息对应的第一广播任务。
3.如权利要求1所述的方法,其特征在于,所述确定所述待广播消息对应的广播任务,包括:
当所述待广播消息包括所述第二待广播消息时,获取所述第二待广播消息的第二关键值及消息版本,所述第二关键值包括所述第二待广播消息的消息类型,以及发送所述第二待广播消息的应用标识;
根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务。
4.如权利要求3所述的方法,其特征在于,所述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
根据所述第二待广播消息的所述第二关键值及消息版本,判断所述本节点是否首次收到所述第二待广播消息;
若所述本节点非首次收到所述第二待广播消息,则在所述本节点中查找所述第二待广播消息对应的第二广播任务;
更新所述第二广播任务中所述第二待广播消息的待广播次数。
5.如权利要求4所述的方法,其特征在于,所述第二待广播消息携带第二目标协议标识,所述方法还包括:
若所述本节点首次收到所述第二待广播消息,则将所述第二待广播消息发送至所述本节点中所述第二目标协议标识对应的应用进行处理。
6.如权利要求3所述的方法,其特征在于,所述根据所述目标应用标识、所述第二待广播消息的所述第二关键值及消息版本,确定所述第二待广播消息对应的第二广播任务,包括:
根据所述第二待广播消息的所述第二关键值及消息版本,确定所述本节点是否存在所述第二待广播消息对应的第二广播任务;
若所述本节点存在所述第二广播任务,则判断所述第二广播任务中的待广播次数是否与所述第二待广播消息携带的预期广播次数相同;
若所述待广播次数小于所述预期广播次数,则更新所述第二广播任务中的待广播次数。
7.如权利要求1至6任一项所述的方法,其特征在于,所述待广播消息还携带广播范围,所述基于所述广播任务,向所述目标应用广播所述待广播消息,包括:
根据所述目标协议标识,确定目标应用;
根据所述广播范围与所述目标应用,确定目标节点,所述目标节点具体为与所述本节点连接的节点中运行有所述目标应用的节点;
基于所述广播任务,向所述目标节点广播所述待广播消息。
8.一种消息广播装置,其特征在于,所述装置包括:
消息接收单元,用于接收待广播消息,所述待广播消息包括运行在本节点上的应用发送的第一待广播消息,和/或,其它节点发送的第二待广播消息,所述待广播消息携带目标协议标识;
广播任务确定单元,用于确定所述待广播消息对应的广播任务,所述广播任务包括所述目标协议标识对应的目标应用标识;
消息广播单元,用于基于所述广播任务,向所述目标应用广播所述待广播消息。
9.一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的消息广播方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的消息广播方法的步骤。
CN202210842282.4A 2022-07-18 2022-07-18 一种消息广播方法、装置、服务器和存储介质 Active CN115296943B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210842282.4A CN115296943B (zh) 2022-07-18 2022-07-18 一种消息广播方法、装置、服务器和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210842282.4A CN115296943B (zh) 2022-07-18 2022-07-18 一种消息广播方法、装置、服务器和存储介质

Publications (2)

Publication Number Publication Date
CN115296943A CN115296943A (zh) 2022-11-04
CN115296943B true CN115296943B (zh) 2024-04-16

Family

ID=83823499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210842282.4A Active CN115296943B (zh) 2022-07-18 2022-07-18 一种消息广播方法、装置、服务器和存储介质

Country Status (1)

Country Link
CN (1) CN115296943B (zh)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010088815A1 (zh) * 2009-02-05 2010-08-12 华为技术有限公司 广播下载类业务的方法、装置和系统
CN104869542A (zh) * 2014-02-25 2015-08-26 中国移动通信集团北京有限公司 一种信息推送方法、装置、系统及相关设备
CN106201740A (zh) * 2016-06-29 2016-12-07 北京金山安全软件有限公司 一种广播消息管理方法、装置及设备
CN106454756A (zh) * 2016-08-17 2017-02-22 东软集团股份有限公司 车载自组织网络中广播消息的方法、装置及系统
KR20180099109A (ko) * 2017-02-28 2018-09-05 (주)라이비오 실시간 방송 요청 시스템 및 방법
CN108804244A (zh) * 2018-05-28 2018-11-13 北京小米移动软件有限公司 数据发送方法、装置及存储介质
CN109525983A (zh) * 2019-01-04 2019-03-26 中国联合网络通信集团有限公司 信息处理方法及装置、存储介质
CN111031002A (zh) * 2019-11-20 2020-04-17 北京小米移动软件有限公司 广播发现方法、广播发现装置及存储介质
CN112565389A (zh) * 2020-11-30 2021-03-26 网易(杭州)网络有限公司 基于区块链的消息广播方法、装置、电子设备及存储介质
CN112732459A (zh) * 2020-12-31 2021-04-30 上海连尚网络科技有限公司 统一接收广播消息的方法和设备
CN113300851A (zh) * 2021-05-18 2021-08-24 中国信息通信研究院 基于dht的区块链消息广播方法、电子设备及存储介质
CN113490154A (zh) * 2021-07-01 2021-10-08 深圳市恒扬数据股份有限公司 广播数据传输方法、装置、终端设备及存储介质
CN113784312A (zh) * 2021-09-06 2021-12-10 深圳市科思科技股份有限公司 V2x协议减少中继节点选择方法、系统、设备及介质
CN114025005A (zh) * 2021-09-30 2022-02-08 山东云海国创云计算装备产业创新中心有限公司 一种数据通讯方法、系统、电子设备及存储介质
CN114024786A (zh) * 2022-01-04 2022-02-08 杭州趣链科技有限公司 消息广播方法、装置、计算机设备和存储介质
WO2022116863A1 (zh) * 2020-12-02 2022-06-09 中兴通讯股份有限公司 预警方法、装置、终端及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539150B2 (en) * 2004-11-16 2009-05-26 International Business Machines Corporation Node discovery and communications in a network
US9191236B2 (en) * 2010-05-20 2015-11-17 International Business Machines Corporation Message broadcasting in a clustered computing environment

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010088815A1 (zh) * 2009-02-05 2010-08-12 华为技术有限公司 广播下载类业务的方法、装置和系统
CN104869542A (zh) * 2014-02-25 2015-08-26 中国移动通信集团北京有限公司 一种信息推送方法、装置、系统及相关设备
CN106201740A (zh) * 2016-06-29 2016-12-07 北京金山安全软件有限公司 一种广播消息管理方法、装置及设备
CN106454756A (zh) * 2016-08-17 2017-02-22 东软集团股份有限公司 车载自组织网络中广播消息的方法、装置及系统
KR20180099109A (ko) * 2017-02-28 2018-09-05 (주)라이비오 실시간 방송 요청 시스템 및 방법
CN108804244A (zh) * 2018-05-28 2018-11-13 北京小米移动软件有限公司 数据发送方法、装置及存储介质
CN109525983A (zh) * 2019-01-04 2019-03-26 中国联合网络通信集团有限公司 信息处理方法及装置、存储介质
CN111031002A (zh) * 2019-11-20 2020-04-17 北京小米移动软件有限公司 广播发现方法、广播发现装置及存储介质
CN112565389A (zh) * 2020-11-30 2021-03-26 网易(杭州)网络有限公司 基于区块链的消息广播方法、装置、电子设备及存储介质
WO2022116863A1 (zh) * 2020-12-02 2022-06-09 中兴通讯股份有限公司 预警方法、装置、终端及存储介质
CN112732459A (zh) * 2020-12-31 2021-04-30 上海连尚网络科技有限公司 统一接收广播消息的方法和设备
CN113300851A (zh) * 2021-05-18 2021-08-24 中国信息通信研究院 基于dht的区块链消息广播方法、电子设备及存储介质
CN113490154A (zh) * 2021-07-01 2021-10-08 深圳市恒扬数据股份有限公司 广播数据传输方法、装置、终端设备及存储介质
CN113784312A (zh) * 2021-09-06 2021-12-10 深圳市科思科技股份有限公司 V2x协议减少中继节点选择方法、系统、设备及介质
CN114025005A (zh) * 2021-09-30 2022-02-08 山东云海国创云计算装备产业创新中心有限公司 一种数据通讯方法、系统、电子设备及存储介质
CN114024786A (zh) * 2022-01-04 2022-02-08 杭州趣链科技有限公司 消息广播方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于VANET的高速公路事故消息快速广播机制;马佳荣;赵祥模;马峻岩;王润民;孟强;;计算机工程;20151115(11);全文 *

Also Published As

Publication number Publication date
CN115296943A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN109391500B (zh) 一种配置管理方法、装置及设备
CN112788128B (zh) 业务信息的推送方法、装置、存储介质及电子装置
CN110808948B (zh) 远程过程调用方法、装置及系统
CN109348434B (zh) 一种场景信息的发送方法、发送装置及终端设备
US8984100B2 (en) Data downloading method, terminal, server, and system
CN107368334B (zh) 一种业务插件交互系统及方法
CN114979058A (zh) 一种can多邮箱复用处理方法及系统
CN110875945B (zh) 用于在通用服务实体上进行任务处理的方法、装置和介质
CN115296943B (zh) 一种消息广播方法、装置、服务器和存储介质
CN112328417B (zh) 一种嵌入式多程序通讯方法和系统
CN113490154B (zh) 广播数据传输方法、装置、终端设备及存储介质
CN113162997B (zh) 数据传输方法、装置、电子设备及可读存储介质
CN110972089A (zh) 一种信令传输的方法、设备及计算机存储介质
CN112188562B (zh) 中继基站的多播调度方法和装置、存储介质及电子装置
CN114897532A (zh) 操作日志处理方法、系统、装置、设备和存储介质
CN114567673A (zh) 一种区块链节点快速广播区块的方法
CN110493735B (zh) 一种短信处理方法及装置
CN114124275A (zh) 一种时间同步方法、装置、设备及存储介质
CN114338271A (zh) 数据处理方法、装置、终端及计算机可读存储介质
CN110569673A (zh) 一种数据文件处理方法、装置、设备及储存介质
CN114362999B (zh) 数据传输方法、系统、电子设备及存储介质
CN115150031B (zh) 基于分布式消息的分布式系统消息响应方法及装置
CN114024707B (zh) 一种服务报文的处理方法、装置、电子设备及存储介质
CN114785603A (zh) 基于mqtt协议的安全防护方法、装置、设备和存储介质
CN116321525A (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