CN116827467A - 应急广播消息平台广播方法、系统、装置和设备 - Google Patents
应急广播消息平台广播方法、系统、装置和设备 Download PDFInfo
- Publication number
- CN116827467A CN116827467A CN202310871448.XA CN202310871448A CN116827467A CN 116827467 A CN116827467 A CN 116827467A CN 202310871448 A CN202310871448 A CN 202310871448A CN 116827467 A CN116827467 A CN 116827467A
- Authority
- CN
- China
- Prior art keywords
- message
- queue
- broadcast message
- server
- target
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000008569 process Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 9
- 230000005484 gravity Effects 0.000 claims description 4
- 238000001816 cooling Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 7
- 230000000694 effects Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 210000004899 c-terminal region Anatomy 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 206010033307 Overweight Diseases 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000003090 exacerbative effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 235000019633 pungent taste Nutrition 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种应急广播消息平台广播方法、系统、装置和设备,属于通信技术领域,该方法包括:在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;在所述客户端设备不具有队列白名单的情况下,则基于客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种应急广播消息平台广播方法、系统、装置和设备。
背景技术
应急广播,是指一种利用广播系统向公众发布突发事件相关信息的方式。通常应急广播系统由应急广播消息平台、消息接收设备、传输覆盖网络和客户端设备等组成。应急广播消息,是指各级调度控制平台之间,以及调度控制平台到播发平台,播发平台到客户端之间传递的数据。
应急广播消息平台消息播发通常是在一种是C端(客户端)通过(HyperTextTransfer Protocol,HTTP)按照广播码主动请求B端(服务端,例如转发平台、播发平台等)获取广播消息。上述方案中,需要C端以某个频率定期主动获取广播消息,C端由于受到网络和系统的不可靠性制约,会一定概率造成某些终端反复重试或反复请求,从而加剧形成数据洪峰,容易引起服务性能雪崩。
发明内容
本发明提供一种应急广播消息平台广播方法、系统、装置和设备,用以解决现有技术中容易引起服务性能雪崩的缺陷,实现一种无需客户端设备主动获取广播消息的应急广播消息平台广播方法。
本发明提供一种应急广播消息平台广播方法,包括:
在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
根据本发明提供的一种应急广播消息平台广播方法,所述基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,包括:
基于所述客户端设备的目标信息以及预设区域范围内多个消息队列,利用训练得到的调度模型确定所述目标消息队列;
其中,所述调度模型为基于K最近邻KNN算法建立的,所述调度模型的训练过程包括:利用预先建立的调度模型获取与所述客户端设备的距离最小的N个消息队列;按照所述距离的大小确定所述N个消息队列中的目标消息队列;根据所述目标消息队列中广播消息的播发完成度对所述调度模型的参数进行更新;N为大于0的整数。
根据本发明提供的一种应急广播消息平台广播方法,所述按照所述距离的大小确定所述N个消息队列中的目标消息队列,包括:
基于所述N个消息队列中各个所述消息队列对应的服务器的负载以及所述距离的大小,确定所述目标消息队列。
根据本发明提供的一种应急广播消息平台广播方法,所述客户端设备的播发监测程序和播发进程中至少一项处于激活状态。
本发明还提供一种应急广播消息系统,包括:
客户端设备,第一服务器和第二服务器;
其中,所述第一服务器与所述第二服务器通过长连接进行通信;所述第二服务器与所述客户端设备通过长连接进行通信;
所述客户端设备用于执行如前述任一项所述的应急广播消息平台广播方法;
所述第一服务器用于获取上级应急广播消息平台的服务器发送的广播消息,并将所述广播消息传输至所述第二服务器的消息队列中;
所述第二服务器用于将所述消息队列中的广播消息发送至所述客户端设备。
根据本发明提供的一种应急广播消息系统,所述第二服务器还用于:
在所述消息队列的广播消息达到消息阈值时,利用如下公式(1)或公式(2)计算所述广播消息的热度值;
根据热度值对所述消息队列中的广播消息进行剔除处理;
S=[(St/(t+2)g)+h] (1)
其中,S为广播消息的热度值,St为广播消息的历史热度值,t为历史播发时间与当前时间的时间间隔,g为重力因子,h为广播消息的初始热度值;
H(t)=H(to)×e-k(to-t)+H(to-t) (2)
其中,H为广播消息的热度值,t为当前时间,to为历史播发时间与当前时间的间隔时间,k为冷却系数。
根据本发明提供的一种应急广播消息系统,所述第二服务器还用于:
接收所述客户端设备发送的消息请求,所述消息请求为所述客户端设备接收所述广播消息后发送的,用于请求所述广播消息中附件信息对应的附件数据;
若未获取到所述客户端设备请求的附件数据,则对所述客户端设备的消息请求进行过滤。
本发明还提供一种应急广播消息平台广播装置,包括:
处理模块,用于在所述客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
所述处理模块,还用于在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收模块,用于接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述应急广播消息平台广播方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述应急广播消息平台广播方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述应急广播消息平台广播方法。
本发明提供的应急广播消息平台广播方法、系统、装置和设备,客户端设备基于队列白名单确定目标消息队列,或基于客户端设备的位置、IP地址和MAC地址中至少一项与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与目标消息队列对应的应急广播消息平台建立连接,然后接收应急广播消息平台发送的广播消息,无需客户端设备主动获取广播消息,避免了客户端设备反复重试或反复请求,从而容易形成数据洪峰,引起服务性能雪崩的问题,而且能够有效提升播发成功率和播发效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的应急广播消息平台广播方法的流程示意图之一;
图2是本发明提供的应急广播消息平台广播方法的系统架构示意图之一;
图3是本发明提供的应急广播消息平台广播方法的播发原理示意图之一;
图4是本发明提供的应急广播消息平台广播方法的消息热度示意图;
图5是本发明提供的应急广播消息平台广播装置的结构示意图;
图6是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,对本发明实施例涉及的应用场景进行介绍:
应急广播消息平台消息播发主要有两种手段:一种是在B端(服务端,例如转发平台、播发平台等)之间通过超文本传输协议(HyperText Transfer Protocol,HTTP)按照时间戳主动拉取广播消息的手段,另一种是C端(客户端)通过HTTP按照广播码主动请求B端获取消息的手段。其中,B端之间实现较为简单,只需要下游平台按照某个时间戳以一个约定的时间粒度轮询拉取数据即可,B端拿到数据后优先解析,解析后的数据以一定的数据结构入库或刷入缓存,这种操作需要在B端的多个系统之间逐层传递下发。C端获取数据则需要C端以某个频率定期主动获取结果。
上述方案中,C端由于受到网络和系统的不可靠性制约,会一定概率造成某些终端反复重试或反复请求,从而加剧形成数据洪峰,容易引起服务性能雪崩。
下面结合图1-图6以具体的实施例对本发明实施例的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1是本发明提供的应急广播消息平台广播方法的流程示意图之一。本实施例的方法可以应用于客户端设备。如图1所示,本实施例提供的方法包括:
步骤101、在客户端设备具有队列白名单的情况下,基于队列白名单,确定目标消息队列;与目标消息队列对应的应急广播消息平台的服务器建立连接;
具体的,在应急广播场景下,需要利用应急广播消息系统向公众发布突发事件相关信息,具有突发、实时、紧急的特点。目的是将生产应急广播消息的应急广播消息平台的消息数据尽快播发下达到各端,广播消息的内容包括以下至少一项:文本、图片和音视频信息。
如图2所示,可选地,上级应急广播消息平台向应急广播消息转发平台实时传递播发手段、播发条件及适用范围。
例如,播发手段采取上游主动通知调用下游接口实现,双方以简单对象访问协议(Simple Object Access Protocol,SOAP)为基础,提前约定字段保证数据一致性。
应急广播消息平台在满足一定的播发条件下播发应急广播消息,播发条件例如可以是消息队列中的消息数量不超过一定的数量阈值,服务器的负载小于预设阈值等,各级应急广播消息平台之间的链路情况等。
适用范围,例如指广播消息播发的地理区域范围,播发的用户的范围(例如某运营商的用户)等。
为了减少消息延迟,可以在客户端设备开机后与应急广播消息平台的服务器建立连接,可选地,客户端设备与该服务器可以保持长连接状态。
步骤102、在客户端设备不具有队列白名单的情况下,则基于客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与目标消息队列对应的应急广播消息平台的服务器建立连接;目标信息包括以下至少一项:客户端设备的位置、IP地址和MAC地址;
具体的,建立连接可通过分段式控制播发成功率。分段式控制包含两部分判断,即判断该客户端设备的用户是否提前指定了队列白名单,若指定则直接按照队列白名单进行分配,例如客户端设备的MAC地址与队列白名单一一对应,即客户端设备可以接收队列白名单中消息队列对应的应急广播消息平台的服务器的广播消息。否则将对客户端设备的位置、区域IP和MAC地址中至少一项与预设区域范围内的多个消息队列进行匹配,例如将消息队列对应的应急广播消息平台的服务器所处的位置、区域IP和MAC地址,与客户端设备的位置、区域IP和MAC地址进行匹配。例如可以利用AI模型进行匹配。
AI模型可以通过训练数据训练得到,AI模型例如基于K-最近邻(K-NearestNeighbors,KNN)算法,神经网络算法等建立。
步骤103、接收应急广播消息平台的服务器基于目标消息队列发送的广播消息。
具体的,建立连接后,应急广播消息平台的服务器通过消息队列向客户端设备传输广播消息,无需客户端设备主动请求。
本实施例的方法,客户端设备基于队列白名单确定目标消息队列,或基于客户端设备的位置、IP地址和MAC地址中至少一项与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与目标消息队列对应的应急广播消息平台建立连接,然后接收应急广播消息平台发送的广播消息,无需客户端设备主动获取广播消息,避免了客户端设备反复重试或反复请求,从而容易形成数据洪峰,引起服务性能雪崩的问题,而且能够有效提升播发成功率和播发效率。
可选地,步骤102中“基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列”可以通过如下方式实现:
基于所述客户端设备的目标信息以及预设区域范围内多个消息队列,利用训练得到的调度模型确定所述目标消息队列;
其中,所述调度模型为基于K最近邻KNN算法建立的,所述调度模型的训练过程包括:利用预先建立的调度模型获取与所述客户端设备的距离最小的N个消息队列;按照所述距离的大小确定所述N个消息队列中的目标消息队列;根据所述目标消息队列中广播消息的播发完成度对所述调度模型的参数进行更新;N为大于0的整数。
具体的,利用调度模型分配最优的消息队列。
例如,为客户端设备分配消息队列不是实时分配的,而是在客户端设备开机时用户自动请求分类调度获得消息队列,这种模式支持横向无限扩展播发能力,保证应急广播消息系统的应急广播消息播发速度。当用户开机时,调用嵌入的SDK传递位置、IP地址、MAC地址等信息,SDK会根据上述信息进行就近匹配,指定一个区域范围内的消息队列,例如指定一个区域队列编号。该模式的引入可以使得整体系统架构不受用户数量增长限制无限横向扩展系统的播发能力。
例如,实际应用场景往往为X个地区共用Y个消息队列、且消息队列经常会因为用户量变化而扩容和缩容,此时利用白名单分配消队列的效果就会受限,分配的不一定是最优的消息队列,播发效果会受到较大影响。
通过调度模型分配目标消息队列,例如利用K-最近邻KNN算法,计算与客户端设备之间的欧几里得距离最小的消息队列,若消息队列只有一个则直接指定该消息队列为目标消息队列,若有多个则按照一定比例分成多组,按照距离大小从高到低重新分配播发任务,同时根据播发完成度指标对调度模型进行激励,即更新调度模型的参数,然后基于更新后的调度模型确定目标消息队列,从而自动化地达到系统性能最优。后续即使系统有缩容和扩容,那么系统也会自动调整到最佳。
可选地,在使用调度模型进行匹配的过程中,若调度模型的参数如权重进行了更新,不再对已经匹配过的消息队列重复计算,以当前调度模型对剩余的其它消息队列继续匹配,能够减少系统开销。
例如,小屏终端视频应用的客户端设备一般都是通过互联网接入,而互联网电视业务的特殊性在于其模式的多元化,可能是互联网电视(Over The Top,OTT)模式也可能是网路协定电视(Internet Protocol Television,IPTV)模式,故在对用户进行精确定位时往往无法依赖单纯的某一维度进行,所以在分配队列阶段,可以采用AI调度模型将对用户位置和区域IP进行匹配。通过结合地理信息系统(Geographic Information System或Geo-Information System,GIS)对客户端设备和区域范围内的多个消息队列匹配,获得匹配度最高的队列Top100,并根据队列状态获取负载最小队列作为唯一消息接收队列,充分的利用了队列资源,有效提升了播发成功率和播发效果。
可选地,基于所述N个消息队列中各个所述消息队列对应的服务器的负载以及所述距离的大小,确定所述目标消息队列。
具体的,例如AI模型得到多个匹配度最高的消息队列,例如匹配度最高的前100个消息队列,则进一步可以根据消息队列对应的应急广播消息平台的服务器状态确定目标消息队列,例如根据服务器的负载,将负载最小的服务器的消息队列作为唯一的消息接收队列,即目标消息队列。
在一实施例中,所述客户端设备的播发监测程序和播发进程中至少一项处于激活状态。
具体的,应急广播消息平台的服务器通过消息队列向客户端设备广播消息时,采用分段式区域广播机制,播发进程一直处于激活状态,保证客户端设备可靠性,可选地,播发进程可以位于Launcher通道,防止被系统误杀进程。但如果当用户跳转进入某个安卓安装包(AndroidPackage,APK)时,Launcher通道仍有一定概率因为硬件问题被杀死(kill),这时还需要播发监测程序和播发通道保活机制(即位于Launcher通道)互相监督,当有任何一方被误杀后由另一方立即拉起,最大程度保证通道可用性。该机制较传统播发手段相比,有效播发完成率提升7.7%,播发成功率提高了39.2%,可以达到94.75%。
因此,本发明实施例中对于客户端设备播发时需要保证留有优先播发通道,优先播发通道需要建立在Launcher上且保持长连接,而不是APK层,防止被系统杀掉进程从而无法接收实时消息。另外还需引入通道保活机制,即需要有播发监测程序,在播发进程处于未激活状态时及时将其激活,解决部分场景下Launcher也会被误杀情况。
本发明实施例还提供一种应急广播消息系统,该应急广播消息系统包括:
客户端设备,以及第一服务器和第二服务器;
其中,第一服务器与所述第二服务器通过长连接进行通信;所述第二服务器与所述客户端设备通过长连接进行通信;
客户端设备用于执行如前述任一实施例中所述的应急广播消息平台广播方法;
第一服务器用于获取上级应急广播消息平台的服务器发送的广播消息,并将所述广播消息传输至所述第二服务器的消息队列中;
所述第二服务器用于将所述消息队列中的广播消息发送至所述客户端设备。
具体的,第一服务器可以是应急广播消息转发平台的服务器,将上级应急广播消息平台的服务器发送的广播消息进行转发,转发至下级应急广播消息平台的服务器,例如应急广播消息转发平台的服务器可以有一个或多个;
第二服务器可以是用于应急广播消息播发平台的服务器,与客户端设备连接,将上级应急广播消息平台的服务器发送至消息队列中的广播消息发送至客户端设备。
示例性地,本发明实施例的应急广播消息系统为基于多层长连接、由服务器端向客户端设备实时广播消息的业务架构模型。
可选地,如图2、图3所示,应急广播播发消息平台从长连接队列获取到消息后,将解析范围框定到区域码(即一个区域范围对应一个区域码,一个区域码对应多个消息队列),然后根据区域码匹配省级队列范围,以组播形式进行发送,期间保证对应省侧每一个队列都能收到消息。
同理,省级播发队列也将解析范围框定到区域码,然后匹配市县级队列范围,以组播形式进行发送,期间保证对应市县侧每一个队列都能收到消息。
例如,应急广播消息播发平台进行区域码初选后向省级队列以长连接手段实施播发;省级队列接收到上游队列广播消息后,再根据区域码进行筛选、将符合条件的广播按照市县以长连接手段进行传递,由于需要保证整体播发时效性,播发平台向下游播发的队列层级不宜过多,以不超过三层为宜,整体播发时间控制在2秒以内;市县级队列会根据本队列建立长连接的终端按照播发策略进行消息播发,并收集每个终端的播发数据,然后逐级上传反馈。
图2中,最上级的应急广播消息生产平台,用于进行消息生产,播发同步,播发统计等。
应急广播消息转发平台,用于进行广播接收,推送策略,数据管理,队列管理,播发统计和统计上报等。
应急广播消息播发平台,用于进行播发管理,区域管理,附件管理(附件为广播消息的附件),队列管理,队列监控,回调管理和广播推送等。
播发SDK为内嵌在客户端设备的应用程序,客户端设备例如包括移动端设备(如手机、平板电脑、智能手表等)和电视端等。
应急广播消息播发平台为了做到向用户侧(即客户端设备)准确和迅速地广播消息,主要通过三个方面来进行,即分级队列、优先通知通道(即Launcher通道)和分类调度。在分级队列中,为了加大广播能力,可以分为三层来进行传递广播,即应急广播消息播发平台队列、省级队列和市县级队列,具体播发方式如下:
应急广播消息播发平台队列收到广播消息后会根据广播消息区域码进行初筛、对于符合条件的省级队列进行广播消息推送传递,一个省份可以有多个队列。
省级队列接收到上游应急广播消息播发平台的广播消息后,在根据区域码进行筛选、将符合条件的市县级队列进行广播消息推送传递,一个市县级可以有多个队列。
市县级队列接收到消息后根据与本队列对应的服务器建立长连接的客户端设备按照播发策略进行消息播发,并收集每个客户端设备的播发数据(例如播发完成情况),然后逐级上传。
分类调度,例如将应急广播消息分为多个类型,消息类型包括全屏广播消息和弹窗广播消息等,消息等级又分为:特别紧急消息、紧急消息和普通消息。
可选地,第二服务器还用于:
在所述消息队列的广播消息达到消息阈值时,利用如下公式(1)或公式(2)计算所述广播消息的热度值;
根据热度值对所述消息队列中的广播消息进行剔除处理;
S = [(St/(t + 2)g)+ h] (1)
其中,S为广播消息的热度值,St为广播消息的历史热度值,t为历史播发时间与当前时间的时间间隔,g为重力因子,h为广播消息的初始热度值;
H(t) = H(to)×e-k(to-t) + H(to-t) (2)
其中,H为广播消息的热度值,t为当前时间,to为历史播发时间与当前时间的间隔时间,k为冷却系数。
具体的,当应急广播消息系统遇到瓶颈时,系统会根据剔除机制来剔除不良广播消息,以保证最大化播发效果。日常应急消息播发有两个特点,一是播放速度极快、很难短时间大量收到客户端用户正反馈数据;二是长尾效应,高优先级消息数量少,播发用户范围窄,低优先级消息数量多,播发用户数量广。且因为低优先级消息播发特点很容易在某个时间节点达到消息队列的瓶颈,即消息队列中消息数量达到预设阈值。此时就需要启动消息剔除算法进行筛选,以保证渠道热度值高的数据做高权重处理,渠道热度值低的数据保留播发效果优良的消息。可选地,可以基于公式(1)或(2)计算热度值,并基于广播消息的热度值,将热度值较低的广播消息进行剔除,例如将热度值低于预设阈值的广播消息进行剔除,使得在播发集群遇到瓶颈时剔除不良广播消息,以保证最大化播发效果。
其中,h为初始热度值(也可以称为本次热度值,例如基于广播消息对应的客户端设备的用户多少判断热度值大小,用户越多,热度值越大)。
公式(1)中时间t加2是为了防止分母过小,(之所以选择2,是参考原算法的两个时间单位作为内容发布时间)。重力因子g值越大,热度值曲线越陡峭,随着时间t的增大热度值下降得越快。g例如可以取值1.5、1.8或2。如图4所示,g为1.8时,热度值随时间t变化的示意图,其中,a、b和c曲线的历史热度值不同。
为了保证公式(2)算法的准确性,每次计算可以将to定义为固定时间段,例如0.01秒,若大于固定时间段,先计算to以前的历史热度值,再进行当前热度值的计算。
上述实施方式中,在播发集群遇到瓶颈时剔除不良播发消息,能够保证最大化播发效果,即渠道热度值高的广播消息做高权重处理,优先播发,渠道热度值低的广播消息保留播发效果优良的消息,能够自动均衡播发资源。
可选地,第二服务器还用于:
接收所述客户端设备发送的消息请求,所述消息请求为所述客户端设备接收所述广播消息后发送的,用于请求所述广播消息中附件信息对应的附件数据;
若未获取到所述客户端设备请求的附件数据,则对所述客户端设备的消息请求进行过滤。
具体的,客户端设备收到广播消息,若广播消息具有附件信息,则可以先从应急广播消息系统的边缘节点(如与客户端设备直接连接的应急广播消息平台的服务器)获取附件数据,如果边缘节点获取到附件数据则直接返回结果,获取不到时向上级应急广播消息平台的服务器获取,获取到后更新边缘节点的缓存,并向客户端设备返回结果。为防止攻击,在未获取到客户端设备请求的附件数据时,或多次均获取不到附件数据,可以对后续该客户端设备的消息请求进行过滤,例如引用布隆过滤器做首道拦截,避免了缓存穿透和缓存击穿问题。
当客户端设备对应急广播消息完成播发时,要对播发完成情况进行反馈上报,由边缘节点整理后层层上报;上报的数据将用来对AI模型进行样本训练同时由二级播发平台最终汇总播发结果,统计完播率,方便运营人员及时调整参数指标。
下面对本发明提供的应急广播消息平台广播装置进行描述,下文描述的应急广播消息平台广播装置与上文描述的应急广播消息平台广播方法可相互对应参照。
图5是本发明提供的应急广播消息平台广播装置的结构示意图之一。如图5所示,本实施例提供的应急广播消息平台广播装置,应用于客户端设备,所述应急广播消息平台广播装置包括:
处理模块110,用于在所述客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
所述处理模块110,还用于在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收模块120,用于接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
可选地,所述处理模块110,具体用于:
基于所述客户端设备的目标信息以及预设区域范围内多个消息队列,利用训练得到的调度模型确定所述目标消息队列;
其中,所述调度模型为基于K最近邻KNN算法建立的,所述调度模型的训练过程包括:利用预先建立的调度模型获取与所述客户端设备的距离最小的N个消息队列;按照所述距离的大小确定所述N个消息队列中的目标消息队列;根据所述目标消息队列中广播消息的播发完成度对所述调度模型的参数进行更新;N为大于0的整数。
可选地,所述处理模块110,具体用于:
基于所述N个消息队列中各个所述消息队列对应的服务器的负载以及所述距离的大小,确定所述目标消息队列。
可选地,所述客户端设备的播发监测程序和播发进程中至少一项处于激活状态。
本发明实施例的装置,其用于执行前述任一方法实施例中的方法,其实现原理和技术效果类似,此次不再赘述。
图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(Communications Interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行应急广播消息平台广播方法,该方法包括:在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的应急广播消息平台广播方法,该方法包括:在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的应急广播消息平台广播方法,该方法包括:在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种应急广播消息平台广播方法,其特征在于,包括:
在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
2.根据权利要求1所述的应急广播消息平台广播方法,其特征在于,所述基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,包括:
基于所述客户端设备的目标信息以及预设区域范围内多个消息队列,利用训练得到的调度模型确定所述目标消息队列;
其中,所述调度模型为基于K最近邻KNN算法建立的,所述调度模型的训练过程包括:利用预先建立的调度模型获取与所述客户端设备的距离最小的N个消息队列;按照所述距离的大小确定所述N个消息队列中的目标消息队列;根据所述目标消息队列中广播消息的播发完成度对所述调度模型的参数进行更新;N为大于0的整数。
3.根据权利要求2所述的应急广播消息平台广播方法,其特征在于,所述按照所述距离的大小确定所述N个消息队列中的目标消息队列,包括:
基于所述N个消息队列中各个所述消息队列对应的服务器的负载以及所述距离的大小,确定所述目标消息队列。
4.根据权利要求1-3任一项所述的应急广播消息平台广播方法,其特征在于,所述客户端设备的播发监测程序和播发进程中至少一项处于激活状态。
5.一种应急广播消息系统,其特征在于,包括:
客户端设备,第一服务器和第二服务器;
其中,所述第一服务器与所述第二服务器通过长连接进行通信;所述第二服务器与所述客户端设备通过长连接进行通信;
所述客户端设备用于执行如权利要求1-4任一项所述的应急广播消息平台广播方法;
所述第一服务器用于获取上级应急广播消息平台的服务器发送的广播消息,并将所述广播消息传输至所述第二服务器的消息队列中;
所述第二服务器用于将所述消息队列中的广播消息发送至所述客户端设备。
6.根据权利要求5所述的应急广播消息系统,其特征在于,所述第二服务器还用于:
在所述消息队列的广播消息达到消息阈值时,利用如下公式(1)或公式(2)计算所述广播消息的热度值;
根据热度值对所述消息队列中的广播消息进行剔除处理;
S = [(St/(t + 2)g)+ h] (1)
其中,S为广播消息的热度值,St为广播消息的历史热度值,t为历史播发时间与当前时间的时间间隔,g为重力因子,h为广播消息的初始热度值;
H(t) = H(to)×e-k(to-t) + H(to-t) (2)
其中,H为广播消息的热度值,t为当前时间,to为历史播发时间与当前时间的间隔时间,k为冷却系数。
7.根据权利要求5所述的应急广播消息系统,其特征在于,所述第二服务器还用于:
接收所述客户端设备发送的消息请求,所述消息请求为所述客户端设备接收所述广播消息后发送的,用于请求所述广播消息中附件信息对应的附件数据;
若未获取到所述客户端设备请求的附件数据,则对所述客户端设备的消息请求进行过滤。
8.一种应急广播消息平台广播装置,其特征在于,包括:
处理模块,用于在客户端设备具有队列白名单的情况下,基于所述队列白名单,确定目标消息队列;与所述目标消息队列对应的应急广播消息平台的服务器建立连接;
所述处理模块,还用于在所述客户端设备不具有队列白名单的情况下,则基于所述客户端设备的目标信息与预设区域范围内多个消息队列进行匹配,得到目标消息队列,并与所述目标消息队列对应的应急广播消息平台的服务器建立连接;所述目标信息包括以下至少一项:所述客户端设备的位置、IP地址和MAC地址;
接收模块,用于接收所述应急广播消息平台的服务器基于所述目标消息队列发送的广播消息。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述应急广播消息平台广播方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述应急广播消息平台广播方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871448.XA CN116827467A (zh) | 2023-07-14 | 2023-07-14 | 应急广播消息平台广播方法、系统、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310871448.XA CN116827467A (zh) | 2023-07-14 | 2023-07-14 | 应急广播消息平台广播方法、系统、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116827467A true CN116827467A (zh) | 2023-09-29 |
Family
ID=88139158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310871448.XA Pending CN116827467A (zh) | 2023-07-14 | 2023-07-14 | 应急广播消息平台广播方法、系统、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116827467A (zh) |
-
2023
- 2023-07-14 CN CN202310871448.XA patent/CN116827467A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111355669B (zh) | 控制网络拥塞的方法、装置及系统 | |
US20160234303A1 (en) | Peer-to-Peer Upload Scheduling | |
CN110336885B (zh) | 边缘节点分配方法、装置、调度服务器及存储介质 | |
CN114501073B (zh) | 直播回源方法及装置 | |
CN106993014B (zh) | 缓存内容的调整方法、装置及系统 | |
JP6097411B2 (ja) | データ送信方法、装置及びシステム | |
CN113438129B (zh) | 数据采集方法及装置 | |
CN109962760B (zh) | 一种适于无线tdma自组网的业务调度方法 | |
CN113811013B (zh) | 集群容量动态调节方法、设备、存储介质和通信系统 | |
CN114760482B (zh) | 直播回源方法及装置 | |
CN111314243B (zh) | 一种支持复杂业务数据传输的LoRa网络QoS调度管理方法 | |
CN115002132B (zh) | 一种用于pcdn网络预缓存资源的分发方法、系统及计算机设备 | |
US20210344971A1 (en) | A method and system for downloading a data resource | |
CN113194134B (zh) | 节点确定方法及装置 | |
CN110602180B (zh) | 一种基于边缘计算的大数据用户行为分析方法及电子设备 | |
KR20160111723A (ko) | 데이터 전송률 향상을 위한 다중 연결 제어 방법 및 장치 | |
CN113573332B (zh) | 一种信息处理方法、装置、设备及可读存储介质 | |
CN108124166B (zh) | 一种互联网直播系统 | |
CN110913239B (zh) | 一种精细化的移动边缘计算的视频缓存更新方法 | |
CN109640357B (zh) | 适用于电力物联环境的基于优先级的无线传感器网络最优资源预留方法 | |
CN101854287B (zh) | 一种p2p流量优化方法及装置 | |
CN101742476B (zh) | 订阅业务下发系统及下发方法 | |
CN115208955B (zh) | 一种资源请求处理的方法、装置、计算机设备及介质 | |
EP3902279A1 (en) | Audio and video stream distribution method in audio and video stream distribution system, and dynamic parent node | |
CN116827467A (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 |