CN117201604A - 发布信息的方法和装置 - Google Patents

发布信息的方法和装置 Download PDF

Info

Publication number
CN117201604A
CN117201604A CN202210601457.2A CN202210601457A CN117201604A CN 117201604 A CN117201604 A CN 117201604A CN 202210601457 A CN202210601457 A CN 202210601457A CN 117201604 A CN117201604 A CN 117201604A
Authority
CN
China
Prior art keywords
subscription
group
publishing
period
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
CN202210601457.2A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210601457.2A priority Critical patent/CN117201604A/zh
Priority to PCT/CN2023/095961 priority patent/WO2023231857A1/zh
Publication of CN117201604A publication Critical patent/CN117201604A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例提供了一种发布信息的方法和装置。该方法包括:发布端设备根据第一订阅端设备的第一订阅内容,确定第一订阅端设备所属的第一订阅组,第一订阅内容包括第一订阅业务和/或第一订阅周期;发布端设备根据第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对第一订阅组的发布策略。本申请提供的发布信息的方法和装置通过将不同的订阅端设备加入订阅组中,并根据需要发布订阅业务的订阅端设备的数目动态调整发布方式,能够有效减轻发布端设备的发布负载和网络负载。

Description

发布信息的方法和装置
技术领域
本申请实施例涉及数据管理领域,尤其涉及一种发布信息的方法和装置。
背景技术
基于通信网络的发布/订阅系统应用日益广泛,订阅端设备向系统发送订阅请求,订阅需要关注的信息,发布端设备可以根据订阅请求发布对应的信息。
现有的发布方式一般为单播发布或组播发布,对于单播发布方式,随着订阅端设备数量的增加,发布端设备需要发布大量重复的数据,负载较大。对于组播方式,发布端设备需要按照组播组内最小订阅周期发送所有订阅端设备的订阅内容的并集,随着发布频率的提高,发布端设备的发布负载和网络负载较高。
如何减小发布/订阅系统中发布端设备和网络的负载,成为亟待解决的问题。
发明内容
本申请实施例提供一种发布信息的方法和装置,能够有效降低发布端设备和网络在信息发布时的负载。
第一方面,提供了一种发布信息的方法,包括:发布端设备根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,所述第一订阅内容包括所述第一订阅端设备的第一订阅业务和/或第一订阅周期;所述发布端设备根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
在该实施例中,发布端设备根据订阅端设备的第一订阅业务和/或第一订阅周期,第一订阅周期可以是第一订阅业务的订阅周期,将第一订阅端设备加入第一订阅组。从而可以结合第一订阅内容和第一订阅组其他订阅端设备的订阅内容,获得需要发布的订阅端设备的数目,从而确定针对第一订阅组的发布策略。由于不同时刻需要发布的订阅端设备的数目是变化的,发布策略也可以动态更新,通过根据需要发布订阅业务的订阅端设备的数目动态调整发布策略,减小发布时发布端设备的发布开销和网络负载。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:发布端设备获取来自第一订阅端设备的第一订阅内容。
在该实施例中,发布端从第一订阅端设备获取第一订阅内容,从而根据该第一订阅内容将第一订阅端设备分入合适的订阅组中,并制定相应的发布策略。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述发布端设备向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所属第一订阅组的组播地址。
在该实施例中,发布端设备在将第一订阅端设备加入第一订阅组后,即可以向第一订阅端设备发送第一反馈信息,反馈信息中可以包括第一订阅端设备所属的第一订阅组的组播地址,从而第一订阅端设备可以根据该第一反馈信息,监听对应的组播通道,获得其订阅的第一订阅内容。
结合第一方面,在第一方面的某些实现方式中,所述第一订阅组中任意两个订阅端设备的订阅内容之间的偏差小于或等于第一预设阈值,该订阅内容包括订阅周期和/或订阅业务;或者,所述第一订阅组中每个订阅端设备与所述第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值。
在该实施例中,第一订阅组内的订阅端设备之间的订阅内容的偏差小于或等于第一预设阈值或者第一订阅组中每个订阅端设备与该第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值,意味着该第一订阅组中的各个订阅端设备的订阅内容有一定的相似度,从而便于后续针对第一订阅组进行发布。为了实现这一目标,例如可以通过设置任意两个订阅端设备的订阅内容偏差的第一预设阈值或者设置订阅端设备与第一订阅组的参考订阅内容偏差的第二预设阈值,并分别针对上述两种方法可以设置不同的偏差确定方式,例如可以通过针对两种方法设置不同的偏差计算方法。
结合第一方面,在第一方面的某些实现方式中,所述发布端设备根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,包括:所述发布端设备根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;所述发布端设备根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
在该实施例中,发布者根据第一订阅内容,确定第一订阅内容与已经存在的至少一个订阅组的参考订阅内容的匹配度,并且最终根据该至少一个匹配度,将第一订阅端设备加入第一订阅组,从而第一订阅组中包括第一订阅端设备的所有订阅端设备的订阅内容是有一定相似度的,利于对该订阅组进行组播发布,减小发布端设备的发布负载和网络负载。
结合第一方面,在第一方面的某些实现方式中,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
在该实施例中,第一订阅端设备加入的第一订阅组是已经存在的至少一个订阅组中的订阅组,并且第一订阅组对应的匹配度的计算值大于预设阈值,从而第一订阅端设备与第一订阅组的匹配程度较高,减小发布端设备的发布负载和网络负载。
结合第一方面。在第一方面的某些实现方式中,所述第一订阅组对应的匹配度是所述至少一个匹配度中最高的。
在该实施例中,订阅端设备会将现存的所有订阅组与第一订阅内容的匹配度都计算出来,选取其中匹配度大于或等于预设阈值的若干个订阅组,并选择其中匹配度最大的第一订阅组,确定第一订阅端设备属于该第一订阅组,从而第一订阅端设备与第一订阅组匹配程度足够高,减少发布端设备的负载。
结合第一方面,在第一方面的某些实现方式中,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,在所述发布端设备根据所述第一订阅内容,确定所述第一订阅端设备所属的第一订阅组之前,所述方法还包括:所述发布端设备建立所述第一订阅组。
在该实施例中,由于已经建立的至少一个订阅组的参考订阅内容与第一订阅端设备的第一订阅内容的匹配度均小于预设阈值,发布端设备新建立第一订阅组,并在接下来对其他订阅端设备的匹配过程中使用包括第一订阅组在内的所有订阅组进行匹配。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:发布端设备确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括所述第二订阅端设备的第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
在该实施例中,第二订阅端设备订阅时,发布端设备会将第二订阅内容与包括第一订阅组在内的所有订阅组的参考订阅内容进行匹配度计算。对于第一订阅组来说,其参考订阅内容是其第一个订阅端设备成员—第一订阅端设备的第一订阅内容,发布端设备将第二订阅内容与该参考订阅内容的匹配度进行计算,从而最终确定是否将第二订阅端设备加入第一订阅组。
结合第一方面,在第一方面的某些实现方式中,所述匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
在该实施例中,订阅端设备的订阅内容与订阅组的参考订阅内容的匹配度通过订阅业务和订阅周期的匹配度之和计算,从而有效减小发布端设备的发布负载和网络负载。
结合第一方面,在第一方面的某些实现方式中,所述发布端设备根据所述第一订阅组中需要发布的订阅端设备的数目,确定针对所述第一订阅组的发布策略,包括:当第一时段第一订阅组中只有一个订阅端设备有需要发布的内容时,所述发布端设备确定在所述第一时段进行单播发布;或者,当第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,所述发布端设备确定在所述第一时段进行组播发布。
在该实施例中,发布端设备最终确定的发布策略中,单播发布时段需要发布的订阅端设备仅有一个,而组播发布的时段需要发布的订阅端设备有至少两个,并且能够根据订阅组内需要发布的订阅端设备的个数调整发布的内容,减小发布端设备的负载和网络负载,该时段也可以理解为时刻或时间点。
结合第一方面,在第一方面的某些实现方式中,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
在该实施例中,对于组播发布的时间段或时刻,发布端设备会计算或预估至少两个订阅端设备进行单播发布的数据大小之和与针对至少两个订阅端设备进行组播发布的数据大小,且进行组播发布的数据大小更小,因此使用组播发布,根据需要发布的数据量大小动态调整发布方式,能够减小发布端负载和网络负载。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述发布端设备获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;所述发布端设备将所述第一订阅端设备移出所述第一订阅组。
在该实施例中,发布端设备接收第一订阅端设备的取消订阅信息,用于取消订阅第一订阅内容,发布端设备根据该信息将第一订阅端设备移出第一订阅组。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述发布端设备确定所述第一订阅组中不存在订阅端设备;所述发布端设备删除所述第一订阅组。
在该实施例中,发布端设备在将第一订阅端设备移出第一订阅组后,确定第一订阅组内的订阅端设备的数量,在第一订阅组中不存在其他订阅端设备,将第一订阅组删除。即在第一订阅组内不存在订阅端设备时,将第一订阅组删除。从而减小发布端设备对第一订阅组信息的存储负载,动态建立或删除订阅组能够使得本申请实施例提供的技术方案具有更好的实施效果,减小发布端设备的负载。
第二方面,提供了一种发布信息的装置,包括:处理单元,用于根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,所述第一订阅内容包括第一订阅业务和/或第一订阅周期,第一订阅周期可以是第一订阅业务的订阅周期;所述处理单元,还用于根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
在该实施例中,发布信息的装置包括处理单元,处理单元根据第一订阅内容,将第一订阅端设备加入合适的第一订阅组中,并根据第一时段第一订阅组的中有需要发布的订阅内容的订阅端设备的数目,确定针对第一订阅组的发布策略,从而可以动态调整发布策略,减轻发布端设备的发布负载和网络负载。
结合第二方面,在第二方面的某些实现方式中,所述第一订阅组中任意两个订阅端设备的订阅内容之间的偏差小于或等于第一预设阈值,该订阅内容包括订阅周期和/或订阅业务;或者,所述第一订阅组中每个订阅端设备与所述第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值。
结合第二方面,在第二方面的某些实现方式中,所述装置还包括收发单元,用于向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所属第一订阅组的组播地址。
结合第二方面,在第二方面的某些实现方式中,所述处理单元,具体用于:根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
结合第二方面,在第二方面的某些实现方式中,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
结合第二方面,在第二方面的某些实现方式中,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,所述处理单元,还用于建立所述第一订阅组。
结合第二方面,在第二方面的某些实现方式中,所述处理单元,还用于确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括所述第二订阅端设备的第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
结合第二方面,在第二方面的某些实现方式中,所述匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
结合第二方面,在第二方面的某些实现方式中,所述处理单元,具体用于:当所述第一时段第一订阅组中只有一个订阅端设备有需要发布的内容时,确定在所述第一时段进行单播发布;或者,当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,确定在所述第一时段进行组播发布。
结合第二方面,在第二方面的某些实现方式中,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
结合第二方面,在第二方面的某些实现方式中,所述收发单元,还用于获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;所述处理单元,还用于将所述第一订阅端设备移出所述第一订阅组。
结合第二方面,在第二方面的某些实现方式中,所述处理单元,还用于:确定所述第一订阅组中不存在订阅端设备;删除所述第一订阅组。
第三方面,提供了一种发布端设备,所述发布端设备包括:一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,所述第一订阅内容包括第一订阅业务和/或第一订阅周期,第一订阅周期可以是第一订阅业务的订阅周期;根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所述第一订阅组的组播地址。
结合第三方面,在第三方面的某些实现方式中,所述第一订阅组中任意两个订阅端设备的订阅内容之间的偏差小于或等于第一预设阈值,该订阅内容包括订阅周期和/或订阅业务;或者,所述第一订阅组中每个订阅端设备与所述第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
结合第三方面,在第三方面的某些实现方式中,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
结合第三方面,在第三方面的某些实现方式中,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:建立所述第一订阅组。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
结合第三方面,在第三方面的某些实现方式中,匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:当第一时段第一订阅组中只有一个订阅端设备有需要发布的内容时,确定在所述第一时段进行单播发布;或者,当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,确定在所述第一时段进行组播发布。
结合第三方面,在第三方面的某些实现方式中,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;将所述第一订阅端设备移出所述第一订阅组。
结合第三方面,在第三方面的某些实现方式中,当所述指令被所述一个或多个处理器执行时,使得所述发布端设备执行以下步骤:确定所述第一订阅组中不存在订阅端设备;删除所述第一订阅组。
第四方面,提供了一种计算机可读存储介质,包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行第一方面或第一方面任一种实现方式的方法。
第五方面,提供了一种发布信息的装置,其特征在于,包括至少一个处理器,所述处理器与存储器耦合,所述存储器用于存储指令,所述指令被所述处理器运行时,使得所述处理器执行第一方面或第一方面任一种实现方式的方法。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序代码或指令,所述计算机程序代码或指令在计算机上执行时,使得所述计算机执行第一方面或第一方面任一种实现方式的方法。
附图说明
图1是适用于本申请实施例的系统的示意性架构图。
图2是工业场景下的发布/订阅交互流程示意图。
图3示出了本申请实施例提供的一种发布信息的方法。
图4示出了本申请实施例提供订阅过程中的一种分组方法的示意性流程图。
图5示出了本申请实施例提供取消订阅过程中的处理方法的示意性流程图。
图6示出了本申请实施例提供的一种发布信息的装置。
图7示出了本申请实施例提供的另一种发布信息的装置。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(globalsystem of mobile communication,GSM)系统、码分多址(code division multipleaccess,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long termevolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobiletelecommunication system,UMTS)、全球互联微波接入(worldwide interoperabilityfor microwave access,WiMAX)通信系统、未来的第五代(5th generation,5G)系统或新无线(new radio,NR)等,或者5G之后演进的通信系统(例如,6G通信系统)等。本申请实施例的技术方案还可以应用于卫星星间链路通信系统、无线投屏系统、虚拟现实(virtualreality,VR)通信系统、接入回传一化链路(integrated access and backhaul,IAB)系统、无线保真(wireless fidelity,Wi-Fi)通信系统、光通信系统等,对此不作限定。
本申请中所涉及的服务器也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。在网络环境下,根据服务器提供的服务类型不同,分为文件服务器、数据库服务器、应用程序服务器等。
本申请实施例中的终端设备可以指用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(Session InitiationProtocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,5G网络中的终端设备或者演进的公用陆地移动通信网络(Public Land Mobile Network,PLMN)中的终端设备等,本申请实施例对此并不限定。
图1是适用于本申请实施例的系统的示意性架构图。该系统包括发布端设备101、订阅端设备102、订阅端设备103和订阅端设备104。订阅端设备102、订阅端设备103和订阅端设备104均与发布端设备101之间有通信链路。发布端设备101可以是服务器或终端设备,例如可以为发布服务器或发布终端设备,用于发布由订阅端设备102、订阅端设备103和订阅端设备104订阅的内容。
订阅端设备可以为服务器或终端设备,例如可以为订阅终端设备或订阅服务器。用户可以通过该订阅终端设备向发布端设备订阅不同的内容,从而发布端设备通过与订阅终端设备之间的链路向其发布订阅的内容。
上述发布端设备、订阅端设备的数量仅是示意性给出。在具体情境下,例如发布端设备可以不止一个,且各个发布端设备可以彼此相连,从而共同执行发布的任务。图1中订阅端设备的数量也可以为其他数量,订阅端设备的数量可以为一个,该一个订阅端设备可以执行一个或多个订阅任务,订阅端设备的数量也可以为多个。
在发布/订阅模式中,发布端设备发布由订阅端设备订阅的消息一般基于单播或组播方式。具体的,订阅端设备在订阅时即确定采用单播还是组播方式进行发布。
当发布端设备采用单播方式向订阅端设备发送订阅消息时,随着订阅端设备数量的增多,会产生大量重复的数据,对发布端设备的网络带来了较大的负载。
当发布端设备采用组播方式向订阅端设备发送订阅消息,随着组播组内的订阅端设备数量的增加,发布端设备需要按照最小周期向整个订阅组内的成员发送组播消息,随着发布频率的提高,发布端设备的网络带宽和性能产生不利影响。
在工业场景中,由于现代工业生产规模的不断扩大,生产设备向综合自动化体系发展。而由于工业系统中各个设备的地域跨越度较大,很多设备布局在户外或者设备的作业点分散。对于一些对环境有一定要求的工业生产,需要对工业设备的运行状态,生产环境的湿度、温度等因素进行实时监控。在网络技术不断发展的条件下,使用例如手机或电脑等移动终端对需要的数据进行订阅,从而该订阅请求由发布终端发布到订阅终端上,使得技术人员或管理人员可以更便捷地获取生产情况,从而为其决策提供一定的参考。
图2示出了工业场景下的发布/订阅的交互流程。如图2所示,发布端设备对应的是发布端设备,可以为服务器或终端设备。订阅端设备对应的是订阅端设备,可以为订阅服务器或订阅终端设备。图2中示出了N个订阅端设备,对应不同的订阅请求,该订阅请求可以由一个订阅端设备向发布/订阅系统发送,也可以由多个订阅端设备向系统发送,本申请以一个订阅段设备对应一个发布信息或订阅任务为例介绍本申请实施例的技术方案。在图2中,订阅端设备1订阅了发布信息1(温度),订阅端设备2订阅了发布信息2(湿度),订阅端设备3也订阅了发布信息2(湿度),而订阅端设备4订阅了发布信息1(温度)和发布信息N(水电导率)……订阅端设备N订阅了发布信息2(湿度)和发布信息3(水含氧量)。发布端设备可以根据不同订阅端设备的个性化需求,对应采用单播或组播方式按照订阅周期发布相应信息。
在实际工业生产中,对于图2示出的一些发布信息,例如温度、湿度等,由于设备的地域跨度较大,可能需要针对每个生产区域,例如生产车间都订阅相应的信息,订阅端设备需要订阅不同的信息组合监控不同的生产条件,例如订阅发布信息1(温度)和发布信息2(湿度)的组合监测生产时的空气状况,通过订阅发布信息3(水含氧量)和发布信息(水电导率)的组合监测生产用水的水质等。因此需要发布的数据量较大,从而发布时会占用大量带宽。但是工业场景下的发布端设备一般配置不高,海量数据的发布可能会引起发布端流量过大,影响信息实时发布的效果,对生产产生不利的影响。
针对上述问题,本申请实施例提供了一种发布信息的方法,能够减小发布/订阅模式中发布端设备的负载。应理解,上文以工业场景为例介绍了发布/订阅交互流程,本申请实施例不限于应用于工业场景中,在其他需要降低发布端发布负载或网络负载的场景也可以适用。
图3示出了本申请实施例提供的一种发布信息的方法,如图3所示,该方法包括:
S310,发布端设备根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,第一订阅内容包括第一订阅业务和第一订阅周期。
第一订阅内容可以是第一订阅端设备直接发送给发布端设备的,或者是第一订阅端设备发送给发布/订阅系统中其他用于处理的服务器,而后由该服务器转发给发布端设备的。第一订阅业务可以是订阅业务的字段。第一订阅内容中还可以包括第一订阅端设备的标识信息,例如可以为IP地址、用户标识等,以便于发布端设备根据该标识信息向该第一订阅端设备发布信息。
发布端设备可以为终端设备或服务器,发布端设备用于发布订阅端设备订阅的内容,发布端设备可以直接或通过程序接口从其他设备中获得需要发布的内容。以工业场景为例,需要发布的内容可以为温度、湿度等生产环境指标,该指标可以通过传感器直接获得并经过一定的处理,传向发布端设备,从而发布端设备可以将不同的数据按照订阅端设备的要求进行发布。
第一订阅端设备可以对应订阅端设备,订阅端设备可以是单独的设备,例如可以为手机、电脑等移动终端,也可以与发布端设备对应的设备为同一个设备,例如,发布端设备和订阅端设备分别对应该同一个设备的两个模块或单元。
第一订阅内容包括第一订阅业务和/或第一订阅周期,第一订阅业务即订阅端设备订阅的内容。以工业场景为例,第一订阅内容可以是由系统定时订阅的,例如通过程序等在规定时间段内监测生产环境的参数;第一订阅内容是由技术人员或管理人员手动订阅的,例如通过发布/订阅系统订阅想要查看或者管理的生产参数等。第一订阅业务可以是单个信息,也可以是多个信息,例如可以为单一的环境温度,或者环境温度以及湿度的组合等。第一订阅周期为需要进行发布的周期,该周期可以按照经验设置或者可以依据管理人员的需求设置。当某一个参数变化较大且又较为重要时,可以设置较小的发布周期,例如5min,从而便于生产系统或工作人员及时发现参数变化,进行一定的调整,保证生产环境或系统的相对稳定运行。当某一个参数变化较为平缓或重要性不高时,可以设置较大的发布周期,例如1h,从而减小发布端的开销。
在S310中,发布端设备能够根据订阅端设备的订阅内容,将订阅内容相似的订阅端设备加入到一个订阅组内。
可选的,在S310之前,发布端设备获取来自第一订阅端设备的第一订阅内容。
获取可以理解为接收或确定。第一订阅端设备可以通过直接向发布端设备发送需要订阅的业务和订阅周期,该第一订阅业务和第一订阅周期可以是通过字段或标识信息在一个信息中或分成多个信息发送给发布端设备,或者订阅端设备发送的信息需要发布端设备经过进一步处理或确定才能获得第一订阅端设备的第一订阅内容,例如需要解码或进一步处理。
在本申请实施例中,所述发布端设备根据所述第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,包括:所述发布端设备根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;所述发布端设备根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
在该实施例中,匹配度可以相当于第一订阅内容与至少一个订阅组的参考内容的相似度,具体的,可以为第一订阅周期与至少一个订阅组的参考订阅周期的相似度和/或第一订阅业务与至少一个订阅组的参考订阅业务的相似度。
在本申请实施例中,所述第一订阅组中任意两个订阅端设备的订阅内容之间的偏差小于或等于第一预设阈值,该订阅内容包括订阅周期和/或订阅业务;或者,所述第一订阅组中每个订阅端设备与所述第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值。
在该实施例中,第一订阅组内的订阅端设备之间的订阅内容的偏差小于或等于第一预设阈值或者第一订阅组中每个订阅端设备与该第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值,意味着该第一订阅组中的各个订阅端设备的订阅内容有一定的相似度,从而便于后续针对第一订阅组进行发布。为了实现这一目标,例如可以通过设置任意两个订阅端设备的订阅内容偏差的第一预设阈值或者设置订阅端设备与第一订阅组的参考订阅内容偏差的第二预设阈值,并分别针对上述两种方法可以设置不同的偏差确定方式,例如可以通过针对两种方法设置不同的偏差计算方法。
该至少一个订阅组可以是发布端设备已经根据已经订阅的订阅端设备建立的至少一个订阅组,当第一订阅端设备订阅时,需要将第一订阅端设备的第一订阅内容与已经存在的至少一个订阅组的参考订阅内容进行比对,确定第一订阅端设备的第一订阅内容与至少一个订阅组的每个订阅组的参考订阅内容的匹配度。
在一些实施例中,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
在该实施例中,至少一个订阅组中可以存在若干个订阅组与第一订阅端设备的匹配度大于预设阈值。至少一个订阅组是一个订阅组时,该订阅组即为第一订阅组,至少一个订阅组是多个订阅组时,该多个订阅组中包括第一订阅组。
例如至少一个订阅组中仅存在一个订阅组与第一订阅端设备的匹配度大于预设阈值,该一个订阅组可以为第一订阅组,从而发布端设备可以根据该匹配度,将第一订阅端设备加入第一订阅组。
又如,至少一个订阅组中存在多个订阅组与第一订阅端设备的匹配度都大于第一预设阈值,例如第一订阅组、第二订阅组、第三订阅组与第一订阅端设备的匹配度都大于第一预设阈值。发布端设备可以是由于进行匹配度确定时,首先确定出第一订阅组与第一订阅端设备的匹配度大于预设阈值,即停止再计算其他订阅组与第一订阅端设备的匹配度,从而减小匹配度计算时的开销,直接将第一订阅端设备加入第一订阅组。第一订阅组可以是发布端设备计算匹配度的第一个订阅组,从而发布端设备仅计算了一个匹配度;第一订阅组也可以是发布端设备计算匹配度的第N个匹配度(N>1),从而发布端设备确定第一订阅端设备所属的第一订阅组时计算了N个匹配度。
发布端设备也可以将现存的所有订阅组与第一订阅端设备的匹配度均计算出来,在匹配度大于预设阈值的候选订阅组(例如第一订阅组、第二订阅组、第三订阅组)中选择匹配度最高的第一订阅组,从而将第一订阅端设备加入第一订阅组,这种将第一订阅端设备加入匹配度最高的订阅组的方式能够提高每个订阅组中订阅端设备的订阅业务的相似度,减小发布时的开销。
在另一些实施例中,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,在所述发布端设备根据所述至少一个匹配度,确定第一订阅端设备所属的第一订阅组之前,所述方法还包括:所述发布端设备建立所述第一订阅组。
在该实施例中,至少一个订阅组中任一个订阅组与第一订阅端设备的匹配度都小于预设阈值,即至少一个订阅组是一个订阅组时,该订阅组不是第一订阅组,至少一个订阅组是多个订阅组时,该多个订阅组不包括第一订阅组。从而发布端设备可以新建立第一订阅组,从而发布端设备可以将第一订阅端设备加入刚建立的第一订阅组。
在本申请实施例中,发布端设备还可以确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,第二订阅内容包括第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
在该实施例中,发布端设备又获取第二订阅端设备的第二订阅内容,从而发布端设备可以将第二订阅内容与包括第一订阅组在内的多个订阅组的参考内容进行比对。如前所述,第一订阅组可以是由于第一订阅端设备没有合适的匹配组之后建立的,第一订阅端设备是第一订阅组的第一个成员,从而在第一订阅组建立之后,将其他订阅端设备与第一订阅组比对时,需要确定第一订阅组的参考内容。
第一订阅组的参考内容可以与其第一个成员一致,例如,可以将第一订阅业务设置为第一订阅组的参考订阅业务,将第一订阅周期设置为第一订阅组的参考订阅周期,从而之后的订阅端设备在与第一订阅组进行匹配度计算时,均使用该参考订阅内容作为匹配度计算的基准。
第一订阅组的参考内容也可以由发布端设备根据其前几个成员的订阅业务而确定,例如,参考订阅内容包括参考订阅业务和参考订阅周期时,可以规定,每一个订阅组的参考订阅周期不更新,与第一个成员的订阅周期一致,而参考订阅业务可以在一定范围内更新。即订阅组的参考订阅周期为其第一个订阅成员的订阅周期,而订阅业务设置参考订阅数目,从而当第一个订阅成员的订阅业务过少时,可以根据后续成员的订阅业务适当更新,当第X个成员加入前参考订阅业务的数目小于参考订阅数目且第X个成员加入后参考订阅业务的数目大于或等于参考订阅数目时,第X个成员加入后参考订阅业务不再更新。例如可以设置参考订阅数目为4,从而如果第一订阅端设备的订阅数目为1,参考订阅业务的数目为1,第二订阅端设备加入时,相对于参考订阅业务的新的订阅业务的数目为2,从而参考订阅业务的数目变为3,而第三订阅端设备的订阅业务相对于当前参考订阅业务的新的订阅业务的数目为2,从而参考订阅业务的数目变为5>4,参考订阅业务不再更新。之后可以以该参考订阅业务和参考订阅周期为基础计算与其他订阅端设备的匹配度。
第一订阅组的参考内容也可以是预先设置的,例如,在订阅发布系统中订阅端设备的订阅业务较为稳定时,可以根据经验预设置多个订阅组,从而将订阅端设备分配到预设的订阅组内。
订阅组的参考订阅内容还可以通过其他方式设置,此处为简洁,不再赘述。
在本申请实施例中,匹配度S的计算方式可以如下:
S=a*X+b*Y (公式1)
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
在上述公式中,a*X为订阅业务周期的匹配度,b*Y为订阅周期的匹配度,将两项相加即可以得到总的匹配度,通过预设阈值大小的控制,可以调整匹配的严格程度。由于X和Y的最大值均为1,最小值均为0,从而S的变动范围为0~a+b,当预设阈值较大时,匹配的条件较高,例如当预设阈值设置为a+b时,订阅组内所有订阅端设备的订阅业务以及订阅周期都是一样的。当a>b时,预设阈值设置为a时,订阅周期一致的订阅端设备都会在同一个订阅组内,从而利于发布端设备在该订阅组内组播订阅业务。当a<b时,预设阈值设置为a时,订阅业务一致的订阅端设备会在同一个订阅组内,能够减小发布端设备发布时的数据包大小。
例如,订阅周期权重a为1,订阅业务权重b为0.5,预设阈值设为1,某一订阅组参考订阅周期为1s,参考订阅业务为{数据1,数据2,数据3,数据4},参考订阅业务的总数目为4。第一订阅端设备的第一订阅周期为2s,第一订阅端设备的第一订阅业务为{数据2,数据3,数据5},则第一订阅业务与参考订阅业务的重叠率Y可以通过第一订阅业务中与参考订阅业务相同的内容的数目与参考订阅业务的数目的比值计算,在这种情况下Y=2/4=0.5。
要计算第一订阅周期与参考订阅周期的重叠率可以计算一定时间内,例如在第一订阅周期和参考订阅周期的最小公倍数周期内,依据第一订阅周期和参考订阅周期发布的重叠次数与依据参考订阅周期需要发布的次数的比值(最大值为1)。例如可以则考察在10个参考订阅周期内,即10秒时间内,重叠次数为5,按照参考订阅周期需要发布的次数为10,则X=5/10=0.5。
通过上述公式,可以计算匹配度S=1*0.5+0.5*0.5=0.5+0.25=0.75。
由于匹配度S小于预设阈值1,第一订阅端设备与该订阅组匹配失败,需要继续匹配其他订阅组或重新建立订阅组。
再如,订阅周期权重a为1,订阅业务权重b为0.5,预设阈值设为1,又一订阅组参考订阅周期为2s,参考订阅业务为{数据2,数据3,数据5},第一订阅端设备的第一订阅周期为1s,第一订阅端设备的第一订阅业务为{数据1,数据2,数据3,数据4},第一订阅周期需要发布的所有时间点完全覆盖了参考订阅周期需要发布的时间点,因此,订阅周期的重叠率为1,订阅业务的重叠率为2/3,最终计算出匹配度S=1*1+0.5*2/3=1.33,该匹配度大于预设阈值1,可以将第一订阅端设备加入该订阅组。
应理解,上述计算匹配度的方式只是示意性示出,本申请实施例并不限制计算匹配度的具体方式,例如,计算匹配度公式中的X时,可以通过计算在一定时间内(例如第一订阅周期与参考订阅周期的最小公倍数),发布重叠次数与发布总次数的比值,此时,在第一订阅周期和参考订阅周期完全相同时,X最大为1/2,且与前文叙述的计算方式相比,该计算方式能够将第一订阅周期与参考订阅周期不同,但是按照第一订阅周期发布能够覆盖所有按照参考订阅周期发布的时间点的情况。例如,仅考虑订阅周期的匹配过程,某一订阅组的参考订阅周期为2s,订阅端设备1的订阅周期为2s,订阅端设备2的订阅周期为1s,则考虑参考订阅周期和订阅端设备1以及参考订阅周期与订阅端设备2的周期的最小公倍数时间内,即2s的时间内,通过依据方法1,即第一订阅周期和参考订阅周期发布的重叠次数与依据参考订阅周期需要发布的次数的比值计算重叠率时,订阅端设备1的重叠率X1=1/1=1,订阅端设备2的重叠率X2=1/1=1。而通过方法2,发布重叠次数与发布总次数的比值计算重叠率时,订阅端设备1的重叠率X1=1/2=0.5,订阅端设备2的重叠率X2=1/3=0.33。由上述计算过程可以看出,虽然订阅端设备1和订阅端设备2的周期不同,按照方法1计算出的周期重叠率是一致的,而按照方法2计算出的周期重叠率不一致。具体使用何种方法计算周期重叠率需要依据具体情况而确定,而本申请的技术方案示意的计算重叠率的方式并不构成对本申请技术方案的限定。
还应理解,前文只介绍了计算匹配度时,同时考虑订阅业务和订阅周期的情况,在一些实施例中,还可以使用订阅端设备的订阅业务和订阅组的参考订阅业务对比进行匹配度计算;或者使用订阅端设备的订阅周期和参考订阅周期对比进行匹配度计算。上述两种方式也可以通过调节前文的匹配度计算公式中的权重实现同样的效果,只不过,对于发布端来说,权重调节为0和仅进行订阅周期或订阅业务的匹配相比,发布端的负载可能会大一些。
通过上文介绍的步骤,即可以将包括第一订阅端设备在内的所有订阅端设备进行合适的分组,发布端设备可以向订阅端设备发送反馈信息,对应,订阅端设备接收发布端设备回复的反馈信息,该反馈信息中可以包括用于指示订阅成功的信息和订阅端设备所在的订阅组的组播地址。对应于不同的订阅端设备,由于其分入的订阅组不同,反馈信息中的组播地址也有所不同。
图4示出了本申请实施例提供的订阅过程中分组方法的示意性流程图。如图4所示,该方法包括:
S410,订阅端设备向发布端设备发送订阅请求。
S420,发布端设备确定该订阅请求是否满足已有订阅组的匹配度。
S432,在发布端设备确定订阅端设备的订阅请求满足已有订阅组的匹配度情况下,发布端设备将当前订阅端设备加入该订阅组中,并向订阅端设备发送反馈信息。
S434,在发布端设备确定订阅端设备的订阅请求不满足已有订阅组的匹配度情况下,发布端设备基于当前订阅内容创建订阅组,并将该订阅端设备加入创建的订阅组中,并向订阅端设备发送反馈信息。
在一些情况下,订阅端设备还可能取消订阅,本申请实施例还提供了针对订阅端设备取消订阅时的方法。
在本申请实施例中,该方法包括:所述发布端设备获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;所述发布端设备将所述第一订阅端设备移出所述第一订阅组。
在该实施例中,取消订阅信息中可以包括第一订阅端设备的标识信息,发布端设备获取该取消订阅信息后,将对应的订阅端设备移出其所在的第一订阅组。将第一订阅端设备移出所在的第一订阅组后,可以向第一订阅端设备发送反馈信息,用于向第一订阅端设备通知取消订阅成功。
之后,发布端设备可以确定第一订阅组中是否还存在其他订阅端设备。
在一些实施例中,发布端设备确定第一订阅组中还存在其他订阅端设备,发布端设备可以更新对应该第一订阅组的发布方式。
在另一些实施例中,发布端设备确定第一订阅组中不存在其他订阅端设备,发布端设备可以删除该第一订阅组,减小发布端设备维护该订阅组的开销。
图5示出了本申请实施例提供的针对取消订阅的处理方法。如图5所示,该方法包括:
S510,订阅端设备向发布端设备发送取消订阅请求。
S520,发布端设备将订阅端设备从订阅组移除。
S530,发布端设备向订阅端设备发送反馈信息,用于反馈取消订阅成功。
S540,发布端设备确定该订阅组内是否还存在其他订阅端设备。
S550,发布端设备确定该订阅组内不存在其他订阅端设备,将该订阅组删除。
通过前文所述的方式,发布端设备能够动态的维护多个订阅组,将订阅内容相似的订阅端设备设置到一个订阅组内,从而发布端设备可以根据订阅组内多个订阅端设备的订阅内容,进行发布。
S320,所述发布端设备根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
在该实施例中,不同于常用的固定组播方式,本申请实施例采用的技术方案为了减小发布端设备的负载和网络负载,动态决策对于同一个订阅组所采用的发布方式,即对于一个订阅组,根据需要发布订阅业务的订阅端设备的数目,确定发布方式。当某一时刻有不止一个订阅端设备需要发布订阅业务时,如果该不止一个订阅端设备需要发布的订阅业务中有重叠内容,该不止一个订阅端设备的订阅业务并集可能是小于单独发送时的其订阅业务的大小代数和的。因此可以进行组播发布减小发布端的发布负载和网络负载。
从整体上说,本申请实施例提供的技术方案可以针对该订阅组内的所有订阅端设备,预估待发布信息的数据量,选择数据量较小的方式进行发布。
在本申请实施例中,所述发布端设备根据所述第一订阅组中需要发布的订阅端设备的数目,确定针对所述第一订阅组的发布策略,包括:当第一时段第一订阅组中只有一个订阅端设备有需要发布的内容时,所述发布端设备确定在所述第一时段进行单播发布;或者,当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,所述发布端设备确定在所述第一时段进行组播发布。
在该实施例中,针对某一时段或者时间点(时刻)根据需要发布的订阅端设备的数目动态调整发布方式,即在只有一个订阅端设备需要发布的时段,采用单播发布,在至少两个需要发布的时段,采用组播发布,该发布策略简单,便于发布端设备动态调整发布策略,且发布策略实施时的负载较小。
在一些实施例中,可以规定当需要发布的订阅端设备数目大于阈值时,才进行组播发布。由于发布端设备的数目大于阈值时,可能有较多的设备需要在该时间段或时刻进行发布,采用组播发布方式能够进一步减小发布端设备的发布负载和网络负载。
进一步的,在本申请实施例中,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
即对于当某一时段时,需要发布的订阅端设备的数目为至少两个时,服务端可以进一步预估针对该至少两个订阅端数目进行单播发布的数据大小之和和针对该订阅端设备进行组播发布时的数据大小,当组播的数据大小较小时,采用组播方式。通过该实施例,能够进一步减小发布端设备的发布负载和网络负载,优化发布策略。
例如,在一个订阅组中,有三个订阅端设备,分别为第一订阅端设备,第二订阅端设备和第三订阅端设备,第一订阅端设备的第一订阅周期为2s,第一订阅业务为{数据2,数据3,数据5};第二订阅端设备的第二订阅周期为1s,第二订阅业务为{数据1,数据2,数据3,数据4};第三订阅端设备的第三订阅周期为4s,第三订阅业务为{数据2,数据3,数据5},设定的订阅周期权重a为1,订阅业务权重为0.5,匹配度的预设阈值为1,三个订阅端设备中第一订阅端设备最先进入该订阅组,则按照前文所述的技术方案,可以计算出第二订阅端设备和该订阅组的匹配度S2=1*1+0.5*2/3=1.33,可以将第二订阅端设备加入该订阅组,第三订阅端设备和该订阅组的匹配度S3=1*0.5+0.5*1=1,刚好满足匹配度的预设阈值,可以将第三订阅端设备加入该订阅组。
针对包括上述三个订阅端设备的订阅组,考察4s内发布端设备发布的方式:
在第1s时,第二订阅端设备的{数据1,数据2,数据3,数据4}需要发布。
在第2s时,第一订阅端设备的{数据2,数据3,数据5}和第二订阅端设备的{数据1,数据2,数据3,数据4}需要发布。
在第3s时,第二订阅端设备的{数据1,数据2,数据3,数据4}需要发布。。
在第4s时,第一订阅端设备的{数据2,数据3,数据5}、第二订阅端设备的{数据1,数据2,数据3,数据4}和第三订阅端设备的{数据2,数据3,数据5}。
假设{数据1,数据2,数据3,数据4}的大小为80字节,{数据2,数据3,数据5}的大小为60字节,{数据1,数据2,数据3,数据4,数据5}的大小为100字节。
从而在4s内,如果对于该订阅组的所有成员均使用单播进行发布,发布端设备所需要发布的大小
L1=4*80+2*60+1*60=500字节。
在4s内,如果对于该订阅组的所有成员使用固定组播进行发布,发布端设备每1s都需要发送{数据1,数据2,数据3,数据4,数据5},从而所需要发布的大小
L2=100*4=400字节。
在4s内,可以采取动态决策方式,例如,由于第1s和第3s仅第二订阅端设备需要发布,可以对第二订阅端设备进行单播发布{数据1,数据2,数据3,数据4},第2s时第一订阅端设备和第二订阅端设备需要发布,采用组播发布方式,发送第一订阅端设备和第二订阅端设备订阅业务的并集{数据1,数据2,数据3,数据4,数据5},第4s时第一订阅端设备、第二订阅端设备和第三订阅端设备都需要发布,可以进行组播发送三个订阅端设备订阅业务的并集{数据1,数据2,数据3,数据4,数据5},从而最终所需要发布的大小
L3=80*2+100+100=360字节。
通过对比上述三种发布方式的大小,可以看出,采用本申请技术方案的发布方式发布的数据最小,能够有效减轻发布端设备的发布负载和网络负载。
订阅组内的所有订阅端设备可以监听单播通道和组播通道获取发布端设备发布的数据,解调可以获取自己所需要的数据。
图6示出了本申请实施例提供的一种发布信息的装置600。该装置600可以是发布端设备,也可以是发布端设备中的装置,对应于图3至图5中方法中的发布端设备。
该发布信息的装置600包括:处理单元610,用于根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,第一订阅内容包括第一订阅业务和/或第一订阅周期;所述处理单元610,还用于根据第一时段所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略,所述所有订阅端设备包括所述第一订阅端设备。
在该实施例中,发布信息的装置600包括处理单元610,处理单元610根据第一订阅端设备的第一订阅内容,将第一订阅端设备加入合适的第一订阅组中,并根据第一订阅组的所有订阅端设备的订阅内容,即结合需要发布订阅业务的订阅端设备的数目,动态调整发布端设备的发布方式,减轻发布端设备的发布负载和网络负载。
在本申请一些实施例中,所述装置还包括收发单元620,还用于向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所属第一订阅组的组播地址。
在本申请一些实施例中,所述第一订阅组中任意两个订阅端设备的订阅内容之间的偏差小于或等于第一预设阈值,该订阅内容包括订阅周期和/或订阅业务;或者,所述第一订阅组中每个订阅端设备与所述第一订阅组的参考订阅内容之间的偏差小于或等于第二预设阈值。
在本申请一些实施例中,所述处理单元610,具体用于:根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
在本申请一些实施例中,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
在本申请一些实施例中,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,所述处理单元610,还用于建立所述第一订阅组。
在本申请一些实施例中,所述处理单元610,还用于确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
在本申请一些实施例中,所述匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
在本申请一些实施例中,当第一时段第一订阅组中只有一个订阅端设备有需要发布的内容时,确定在所述第一时段进行单播发布;或者,当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,确定在所述第一时段进行组播发布。
在本申请一些实施例中,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
在本申请一些实施例中,所述收发单元620,还用于获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;所述处理单元610,还用于将所述第一订阅端设备移出所述第一订阅组。
在本申请一些实施例中,所述处理单元610,还用于:确定所述第一订阅组中不存在订阅端设备;删除所述第一订阅组。
图7示出了本申请实施例提供的一种发布信息的装置700。发布信息的装置700包括:处理器720。在本申请的实施例中,处理器720用于实现相应的控制管理操作,例如,处理器720用于支持发布信息的装置700执行前述实施例的方法或操作或功能。可选的,发布信息的装置700还可以包括:存储器710和通信接口730;处理器720、通信接口730以及存储器710可以相互连接或者通过总线740相互连接。其中,通信接口730用于支持该发布信息的装置700与订阅端设备等进行通信,存储器710用于存储发布信息的装置700的程序代码和数据。处理器720调用存储器710中存储的代码或者数据实现相应的操作。该存储器710可以跟处理器耦合在一起,也可以不耦合在一起。本申请实施例中的耦合是发布信息的装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于发布信息的装置、单元或模块之间的信息交互。
其中,处理器720可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。通信接口730可以是收发器、电路、总线、模块或其它类型的通信接口。总线740可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,说明书通篇中提到的“一些实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一些实施例中”或“在另一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
还应理解,本文中涉及的第一、第二以及各种数字编号仅为描述方便进行的区分,并不用来限定本申请实施例的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (25)

1.一种发布信息的方法,其特征在于,包括:
发布端设备根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,所述第一订阅内容包括第一订阅业务和/或第一订阅周期;
所述发布端设备根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述发布端设备向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所述第一订阅组的组播地址。
3.根据权利要求1或2所述的方法,其特征在于,所述发布端设备根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,包括:
所述发布端设备根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;
所述发布端设备根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
4.根据权利要求3中任一项所述的方法,其特征在于,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
5.根据权利要求3中任一项所述的方法,其特征在于,所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,在所述发布端设备根据所述至少一个匹配度,确定第一订阅端设备所属的第一订阅组之前,所述方法还包括:
所述发布端设备建立所述第一订阅组。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述发布端设备确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括所述第二订阅端设备的第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
7.根据权利要求3至5中任一项所述的方法,其特征在于,所述匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述发布端设备根据所述第一订阅组中需要发布的订阅端设备的数目,确定针对所述第一订阅组的发布策略,包括:
当第一时段第一订阅组中只有一个订阅端设备有需要发布的订阅业务时,所述发布端设备确定在所述第一时段进行单播发布;或者,
当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,所述发布端设备确定在所述第一时段进行组播发布。
9.根据权利要求8所述的方法,其特征在于,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
10.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述发布端设备获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;
所述发布端设备将所述第一订阅端设备移出所述第一订阅组。
11.根据权利要求1至10中任一项所述的方法,其特征在于,所述方法还包括:
所述发布端设备确定所述第一订阅组中不存在订阅端设备;
所述发布端设备删除所述第一订阅组。
12.一种发布信息的装置,其特征在于,包括:
处理单元,用于根据第一订阅端设备的第一订阅内容,确定所述第一订阅端设备所属的第一订阅组,所述第一订阅内容包括第一订阅业务和/或第一订阅周期;
所述处理单元,还用于根据所述第一订阅组中需要发布订阅业务的订阅端设备的数目,确定针对所述第一订阅组的发布策略。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
收发单元,用于向所述第一订阅端设备发送第一反馈信息,所述第一反馈信息包括所属第一订阅组的组播地址。
14.根据权利要求12或13所述的装置,其特征在于,所述处理单元,具体用于:
根据所述第一订阅内容,确定至少一个匹配度,所述至少一个匹配度为所述第一订阅内容与至少一个订阅组中的每一个订阅组的参考内容的匹配度,所述每一个订阅组的参考内容包括所述每一个订阅组的参考订阅业务和/或参考订阅周期;
根据所述至少一个匹配度,确定所述第一订阅端设备所属的第一订阅组。
15.根据权利要求14中任一项所述的装置,其特征在于,所述第一订阅组为所述至少一个订阅组中的订阅组,所述第一订阅组对应的匹配度大于或等于预设阈值。
16.根据权利要求15中任一项所述的装置,其特征在于,
所述第一订阅组不是所述至少一个订阅组中的订阅组,所述至少一个匹配度均小于预设阈值,所述处理单元,还用于建立所述第一订阅组。
17.根据权利要求16所述的装置,其特征在于,
所述处理单元,还用于确定第二订阅端设备的第二订阅内容与所述第一订阅组的参考内容的匹配度,所述第二订阅内容包括第二订阅业务和/或第二订阅周期,所述第一订阅组的参考内容包括第一订阅组的参考订阅业务和/或参考订阅周期,所述第一订阅组的参考订阅业务为所述第一订阅业务,所述第一订阅组的参考订阅周期为所述第一订阅周期。
18.根据权利要求14至16中任一项所述的装置,其特征在于,所述匹配度S的计算方式如下:
S=a*X+b*Y,
其中,a为订阅周期权重,b为订阅业务权重,X为所述第一订阅周期与所述参考订阅周期的重叠率,Y为所述第一订阅业务与所述参考订阅业务的重叠率。
19.根据权利要求12至18中任一项所述的装置,其特征在于,所述处理单元,具体用于:
当第一时段第一订阅组中只有一个订阅端设备有需要发布的订阅业务时,确定在所述第一时段进行单播发布;或者,
当所述第一时段第一订阅组中有至少两个订阅端设备有需要发布的订阅业务时,确定在所述第一时段进行组播发布。
20.根据权利要求19所述的装置,其特征在于,在所述第一时段,针对所述至少两个订阅端设备分别进行单播发布的数据大小之和大于针对所述至少两个订阅端设备进行组播发布的数据大小。
21.根据权利要求12或13所述的装置,其特征在于,
所述收发单元,还用于获取来自所述第一订阅端设备的取消订阅信息,所述取消订阅信息用于取消订阅所述第一订阅内容;
所述处理单元,还用于将所述第一订阅端设备移出所述第一订阅组。
22.根据权利要求12至20中任一项所述的装置,其特征在于,所述处理单元,还用于:
确定所述第一订阅组中不存在订阅端设备;
删除所述第一订阅组。
23.一种发布信息的装置,其特征在于,包括至少一个处理器,所述处理器与存储器耦合,所述存储器用于存储指令,所述指令被所述处理器运行时,
使得所述处理器执行如权利要求1至11中任意一项所述的方法。
24.一种计算机可读存储介质,包括计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至11中任一项所述的方法。
25.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序代码或指令,所述计算机程序代码或指令在计算机上执行时,使得所述计算机执行如权利要求1至11中任一项所述的方法。
CN202210601457.2A 2022-05-30 2022-05-30 发布信息的方法和装置 Pending CN117201604A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210601457.2A CN117201604A (zh) 2022-05-30 2022-05-30 发布信息的方法和装置
PCT/CN2023/095961 WO2023231857A1 (zh) 2022-05-30 2023-05-24 发布信息的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210601457.2A CN117201604A (zh) 2022-05-30 2022-05-30 发布信息的方法和装置

Publications (1)

Publication Number Publication Date
CN117201604A true CN117201604A (zh) 2023-12-08

Family

ID=88991048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210601457.2A Pending CN117201604A (zh) 2022-05-30 2022-05-30 发布信息的方法和装置

Country Status (2)

Country Link
CN (1) CN117201604A (zh)
WO (1) WO2023231857A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2680539B1 (en) * 2012-06-27 2016-04-06 VeriSign, Inc. Hierarchical publish/subscribe system
WO2015074150A1 (en) * 2013-11-21 2015-05-28 Graphite Software Corporation Managed domains for remote content and configuration control on mobile information devices
CN112187501B (zh) * 2019-07-05 2022-08-09 腾讯科技(深圳)有限公司 终端分组管理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
WO2023231857A1 (zh) 2023-12-07

Similar Documents

Publication Publication Date Title
CN109769269B (zh) 通信方法和网络设备
US20080081617A1 (en) Method and Apparatus for Providing Virtual Mobile Phone Number
CN110267343B (zh) 一种寻呼管理方法、网络数据分析功能及网络侧设备
MX2007015279A (es) Sistema, terminal, entidad de red, metodo, y producto de programa de computadora para selecciion de sistema en un sistema de comunicacion de modos multiples.
CN1996860A (zh) 策略控制的方法、装置及系统
US20120066332A1 (en) Method and system for optimizing cpns enabler
US10548045B2 (en) Systems and methods for tracking and calculating aggregate maximum bit rate across multiple sessions
CN114064275A (zh) 数据处理方法及装置
CN106878030B (zh) 一种计费方法和装置
CN113938874B (zh) 数据处理方法、装置、设备及系统
CN113573368A (zh) 一种信息处理方法、装置、设备及计算机可读存储介质
CN117201604A (zh) 发布信息的方法和装置
CN101309458B (zh) 多企业间的短信实现方法、系统和设备
US10148512B2 (en) Mobile video optimization
US9788299B2 (en) Base station paging based on traffic content type
CN116455771A (zh) 用于QoS通知的方法和网络节点
US8611865B1 (en) Methods and apparatus to manage voice message system attributes
EP3289806A1 (en) Method and apparatus for using call admission control for client balancing
CN108616833B (zh) Pcc会话的处理方法、装置、系统、pgw和pcrf
CN105050116A (zh) 移动通信系统中的业务处理方法及接入网设备
WO2023279977A1 (en) Network nodes and methods therein for event monitoring
US20240214845A1 (en) Network Nodes and Methods Therein for Event Monitoring
CN113824789B (zh) 一种通路描述符的配置方法、装置、设备及存储介质
CN114980148B (zh) 网络能力确定方法和装置
CN113950090B (zh) 5g网络优先级自动调整方法、装置及电子设备

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