CN113535432B - 数据分流方法、装置、电子设备及存储介质 - Google Patents
数据分流方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113535432B CN113535432B CN202110818642.2A CN202110818642A CN113535432B CN 113535432 B CN113535432 B CN 113535432B CN 202110818642 A CN202110818642 A CN 202110818642A CN 113535432 B CN113535432 B CN 113535432B
- Authority
- CN
- China
- Prior art keywords
- target service
- target
- server
- service metadata
- virtual
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000011664 signaling Effects 0.000 claims abstract description 109
- 238000013507 mapping Methods 0.000 claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 53
- 238000013467 fragmentation Methods 0.000 claims abstract description 15
- 238000006062 fragmentation reaction Methods 0.000 claims abstract description 15
- 230000000903 blocking effect Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 8
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供一种数据分流方法、装置、电子设备及存储介质,涉及数据处理技术领域。其中,该方法可以应用于信令转发服务器,信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,该方法包括:通过虚拟服务器接收待分流信令数据,对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据;根据第一预设映射关系,从多个虚拟客户端中确定各目标业务元数据对应的各目标虚拟客户端;根据第二预设映射关系,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,应用本申请,可以实现各目标业务元数据的分流转发,避免数据阻塞,保证信令转发服务器的处理性能。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据分流方法、装置、电子设备及存储介质。
背景技术
随着大数据应用的逐步普及,越来越多的大数据分析、内容安全审计和业务应用可视化的应用得到普及,因此,将业务数据正确地、按需传递给所需的分析***越来越重要。
现有的,一般基于Java传统的输入输出接口实现全网的数据广播和数据转发。
可以看出,现有的数据分流方法比较简单,分流设备的处理性能难以保证。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种数据分流方法、装置、电子设备及存储介质,可以保证信令转发服务器的处理性能。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本发明提供一种数据分流方法,应用于信令转发服务器,所述信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,所述方法包括:
通过所述虚拟服务器接收待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,所述目标业务元数据标识有所属业务类型;
根据第一预设映射关系,从多个所述虚拟客户端中确定各所述目标业务元数据对应的各目标虚拟客户端,所述第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;
根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,所述第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系。
在可选的实施方式中,所述通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,包括:
根据各所述目标业务元数据的业务类型,确定各所述目标业务元数据的发送优先级;
根据各所述目标业务元数据的发送优先级,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据。
在可选的实施方式中,所述方法还包括:
接收待注册业务服务器发送的注册消息,所述注册消息包括:待注册业务服务器的标识以及对应的虚拟客户端的标识;
根据所述注册消息,更新所述第二预设映射关系。
在可选的实施方式中,所述根据第一预设映射关系,从多个所述虚拟客户端中确定目标虚拟客户端,包括:
根据各所述目标业务元数据所属的业务类型,基于异步消息处理机制,对各所述目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据;
根据所述第一预设映射关系,从多个所述虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端。
在可选的实施方式中,所述对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,包括:
对所述待分流信令数据进行解码,得到解码后的待分流信令数据;
根据解码后的待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据;
所述根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,包括:
通过各所述目标虚拟客户端对各所述目标业务元数据进行编码处理,获取编码后的各目标业务元数据;
对所述编码后的各目标业务元数据进行加密处理,通过各所述目标虚拟客户端向对应的各目标业务服务器转发加密后的各所述目标业务元数据。
在可选的实施方式中,所述方法还包括:
通过各所述目标虚拟客户端记录各所述目标业务元数据的数据包大小;
接收各所述目标业务服务器发送的反馈消息,所述反馈消息包括接收的各所述目标业务元数据的数据包大小;
根据记录的各所述目标业务元数据的数据包大小和所述反馈消息,生成重发指令;
根据所述重发指令,通过各所述目标虚拟客户端向对应的各目标业务服务器重新转发各所述目标业务元数据。
在可选的实施方式中,所述通过所述虚拟服务器接收待分流信令数据,还包括:
基于同步非阻塞输入输出模型,通过所述虚拟服务器接收待分流信令数据。
第二方面,本发明提供一种数据分流装置,应用于信令转发服务器,所述信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,所述数据分流装置包括:
分片模块,用于通过所述虚拟服务器接收待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,所述目标业务元数据标识有所属业务类型;
确定模块,用于根据第一预设映射关系,从多个所述虚拟客户端中确定各所述目标业务元数据对应的各目标虚拟客户端,所述第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;
转发模块,用于根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,所述第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系。
在可选的实施方式中,所述转发模块,具体用于根据各所述目标业务元数据的业务类型,确定各所述目标业务元数据的发送优先级;
根据各所述目标业务元数据的发送优先级,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据。
在可选的实施方式中,所述转发模块,还用于接收待注册业务服务器发送的注册消息,所述注册消息包括:待注册业务服务器的标识以及对应的虚拟客户端的标识;
根据所述注册消息,更新所述第二预设映射关系。
在可选的实施方式中,所述确定模块,具体用于根据各所述目标业务元数据所属的业务类型,基于异步消息处理机制,对各所述目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据;
根据所述第一预设映射关系,从多个所述虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端。
在可选的实施方式中,所述分片模块,具体用于对所述待分流信令数据进行解码,得到解码后的待分流信令数据;
根据解码后的待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据;
所述转发模块,具体用于通过各所述目标虚拟客户端对各所述目标业务元数据进行编码处理,获取编码后的各目标业务元数据;
对所述编码后的各目标业务元数据进行加密处理,通过各所述目标虚拟客户端向对应的各目标业务服务器转发加密后的各所述目标业务元数据。
在可选的实施方式中,所述数据分流装置还包括:重发模块,用于通过各所述目标虚拟客户端记录各所述目标业务元数据的数据包大小;
接收各所述目标业务服务器发送的反馈消息,所述反馈消息包括接收的各所述目标业务元数据的数据包大小;
根据记录的各所述目标业务元数据的数据包大小和所述反馈消息,生成重发指令;
根据所述重发指令,通过各所述目标虚拟客户端向对应的各目标业务服务器重新转发各所述目标业务元数据。
在可选的实施方式中,所述分片模块,还用于基于同步非阻塞输入输出模型,通过所述虚拟服务器接收待分流信令数据。
第三方面,本发明提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如前述实施方式任一所述数据分流方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如前述实施方式任一所述数据分流方法的步骤。
本申请的有益效果是:
本申请实施例提供的数据分流方法、装置、电子设备及存储介质中,应用于信令转发服务器,信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,该方法包括:通过虚拟服务器接收待分流信令数据,对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,目标业务元数据标识有所属业务类型;根据第一预设映射关系,从多个虚拟客户端中确定各目标业务元数据对应的各目标虚拟客户端,第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;根据第二预设映射关系,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系,应用本申请实施例,由于可以实现各目标业务元数据的分流转发,避免数据阻塞,因此,可以保证信令转发服务器的处理性能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据分流方法的流程示意图;
图2为本申请实施例提供的另一种数据分流方法的流程示意图;
图3为本申请实施例提供的又一种数据分流方法的流程示意图;
图4为本申请实施例提供的另一种数据分流方法的流程示意图;
图5为本申请实施例提供的又一种数据分流方法的流程示意图;
图6为本申请实施例提供的另一种数据分流方法的流程示意图;
图7为本申请实施例提供的一种数据分流装置的功能模块示意图;
图8为本申请实施例提供的一种电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
图1为本申请实施例提供的一种数据分流方法的流程示意图,该数据分流方法可以应用于信令转发服务器,该信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,在一些实施例中,该信令转发服务器可以与通信网中的通信基站通信连接。如图1所示,该方法包括:
S101、通过虚拟服务器接收待分流信令数据,对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,目标业务元数据标识有所属业务类型。
其中,可以通过通信网获取移动终端的待分流信令数据,可选地,该移动终端可以包括但不限于:智能手机、平板电脑、智能可穿戴设备等,所获取的待分流信令数据可以包括:定位信息、通话信息(比如,通话时间、通话对方的号码信息)、短消息信息等,在此不作限定。以手机为例进行说明,手机信令数据可以由手机用户在发生通话、发短信或移动位置等事件时,被通信网中的通信基站捕获并记录同一用户信令轨迹所产生。
获取到待分流信令数据后,则可以对该待分流信令数据进行分片处理,分片处理可以理解为分割操作,也即可以对该待分流信令数据进行分割操作,可以理解的是,通过分片处理后,则可以将数据量较大的待分流信令数据划分为数据量较小的多个目标业务元数据,且每个目标业务元数据标识有所属业务类型,可选地,业务元数据所属业务类型可以包括:短信业务、位置业务、通话业务等,在此不作限定。当然,本申请在此并不限定各目标业务元数据的数据包大小,根据实际的应用场景可以有所不同。
S102、根据第一预设映射关系,从多个虚拟客户端中确定各目标业务元数据对应的各目标虚拟客户端,第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系。
其中,不同业务类型的业务元数据可以对应不同的虚拟客户端,由于第一预设映射关系可以包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系,因此,得到分片后的多个目标业务元数据后,可以根据该第一预设映射关系,确定各个目标业务元数据对应的各目标虚拟客户端。
S103、根据第二预设映射关系,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系。
其中,不同的虚拟客户端可以对应不同的业务服务器,基于上述说明,确定了各目标业务元数据对应的各目标虚拟客户端后,则可以通过目标虚拟客户端向其对应的目标业务服务器转发各目标业务元数据,实现各目标业务元数据的分流转发,避免目标业务元数据无法及时转发导致的信令转发服务器的性能下降的问题,提高了信令转发服务器的网络背压能力,保证了信令转发服务器的稳定性。
在一些实施例中,信令转发服务器也可以与通信网中的代理服务器通信连接,该代理服务器与通信网中的通信基站通信连接,以通过代理服务器获取待分流信令数据,本申请在此并不限定待分流信令数据的获取途径,根据实际的应用场景可以有所不同。
综上,本申请实施例提供一种数据分流方法,应用于信令转发服务器,信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,该方法包括:通过虚拟服务器接收待分流信令数据,对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,目标业务元数据标识有所属业务类型;根据第一预设映射关系,从多个虚拟客户端中确定各目标业务元数据对应的各目标虚拟客户端,第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;根据第二预设映射关系,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系,应用本申请实施例,由于可以实现各目标业务元数据的分流转发,避免数据阻塞,因此,可以保证信令转发服务器的处理性能,提高信令转发服务器的稳定性。
图2为本申请实施例提供的另一种数据分流方法的流程示意图,可选地,如图2所示,上述通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,包括:
S201、根据各目标业务元数据的业务类型,确定各目标业务元数据的发送优先级。
S202、根据各目标业务元数据的发送优先级,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据。
其中,目标业务元数据的发送优先级可以表征对应的各目标虚拟客户端的发送顺序,可选地,目标业务元数据的发送优先级越高,则对应地目标虚拟客户端的发送顺序越靠前,也即对应地目标虚拟客户端可以优先将该目标业务元数据发送给对应的目标业务服务器,使得可以满足对时效性要求较高的应用场景的需求,保证时效性,提高本申请数据分流方法的适应性。
可选地,业务元数据所属业务类型包括短信业务、位置业务、通话业务时,位置业务对应的目标业务元数据的发送优先级,可以高于通话业务对应的目标业务元数据的发送优先级,而通话业务对应的目标业务元数据的发送优先级,可以高于短信业务对应的目标业务元数据的发送优先级,也即具体发送时,位置业务对应的各目标虚拟客户端将向其对应的目标业务服务器优先转发位置业务类型的目标业务元数据;通话业务对应的各目标虚拟客户端次之,短信业务对应的各目标虚拟客户端最后,当然,根据实际的应用场景,具体转发顺序并不以此为限。
图3为本申请实施例提供的又一种数据分流方法的流程示意图。可选地,如图3所示,上述方法还包括:
S301、接收待注册业务服务器发送的注册消息,注册消息包括:待注册业务服务器的标识以及对应的虚拟客户端的标识。
S302、根据注册消息,更新第二预设映射关系。
其中,根据实际的应用场景,比如,某虚拟客户端对应的当前业务服务器发生故障需要配置新的业务服务器时,则需要对信令转发服务器中的第二预设映射关系进行更新,以便可以对各虚拟客户端映射的各业务服务器进行更新,可选地,在该情况下,待注册服务器可以向信令转发服务器发送注册消息,该注册消息可以包括待注册业务服务器的标识以及对应的虚拟客户端的标识,信令转发服务器接收到该注册消息后,则可以更新第二预设映射关系。当然,本申请在此并不限定具体的更新方式,可以是在第二预设映射关系中添加待注册业务服务器,又或者,是移除历史业务服务器等。
可选地,待注册业务服务器的标识可以包括:端口号、IP地址、服务器设备序列号等,虚拟客户端的标识可以包括端口号、IP地址、客户端名称等,在此不作限定,根据实际的应用场景可以有所不同。
图4为本申请实施例提供的另一种数据分流方法的流程示意图。可选地,如图4所示,上述根据第一预设映射关系,从多个虚拟客户端中确定目标虚拟客户端,包括:
S401、根据各目标业务元数据所属的业务类型,基于异步消息处理机制,对各目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据。
其中,在得到各目标业务数据所属的业务类型后,则可基于异步消息处理机制,比如Handler机制,对各目标业务元数据进行业务维度处理,得到处理后的业务元数据,可选地,每一Handler模块可以对应一种业务类型,用于对该业务类型对应的目标业务元数据进行业务维度处理,业务维度处理方式可以包括但不限于定位位置统计、通话时长统计、业务元数据来源统计、用户画像统计(比如,居住地、工作地、行为偏好)等,但具体设置方式并不以此为限。
可以理解的是,通过对各目标业务元数据进行业务维度处理,可以对各目标业务元数据进行初步业务处理,滤除无效数据,减少虚拟客户端向业务服务器转发的数据量,避免网络瞬态导致数据浪涌,提高本申请数据分流方法的适用性。
S402、根据第一预设映射关系,从多个虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端。
参见前述说明,在得到处理后的各目标业务元数据后,则可以根据处理后的各目标业务元数据所属的业务类型,以及第一预设映射关系,确定处理后的各目标业务元数据对应的各目标虚拟客户端。
图5为本申请实施例提供的又一种数据分流方法的流程示意图。可选地,如图5所示,上述对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,包括:
S501、对待分流信令数据进行解码,得到解码后的待分流信令数据。
S502、根据解码后的待分流信令数据,对待分流信令数据进行分片处理,得到分片后的多个目标业务元数据。
其中,若所获取的待分流信令数据是根据信令标准规范进行编码生成的,那么有必要对其进行解码,使得根据解码后的待分流信令数据可以获取该待分流信令数据所包括的业务类型,可选地,若某条待分流信令数据的数据量较大,则该条待分流信令数据可以包括多个业务类型,进而根据该待分流信令数据所包括的业务类型、以及预设分片阈值可以对该待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,每个目标业务元数据可以标注有所属业务类型,且每个目标业务元数据的数据量大小可以小于预设分片阈值所指示的分片数据量阈值。
相应地,上述根据第二预设映射关系,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据,包括:
S503、通过各目标虚拟客户端对各目标业务元数据进行编码处理,获取编码后的各目标业务元数据。
S504、对编码后的各目标业务元数据进行加密处理,通过各目标虚拟客户端向对应的各目标业务服务器转发各目标业务元数据。
可以理解的是,在进行解码之后,通过目标虚拟客户端向目标业务服务器转发各目标业务元数据时,还有必要对其进行编码操作,以便可以成功转发,可选地,编码格式包括但不限于:ASCII、UTF-8、UTF-16等,在此不作限定,根据实际的应用场景可以有所不同。
而在进行编码之后,为了保证安全性,还有必要对编码后的各目标业务元数据进行加密处理,可选地,加密算法可以包括但不限于:哈希算法、对称加密算法、非对称加密算法等,在此不作限定,根据实际的应用场景可以灵活选择。可以理解的是,若进行了加密操作,则对于目标业务服务器来说,可以采用相应地解码算法进行解码操作、采用相应的解密算法进行解密操作,在此不作限定。
在一些实施例中,上述解密、编码操作具体可以通过Pipeline模型实现,在此不作限定。
图6为本申请实施例提供的另一种数据分流方法的流程示意图。可选地,如图6所示,上述方法还包括:
S601、通过各目标虚拟客户端记录各目标业务元数据的数据包大小。
S602、接收各目标业务服务器发送的反馈消息,反馈消息包括接收的各目标业务元数据的数据包大小。
S603、根据记录的各目标业务元数据的数据包大小和反馈消息,生成重发指令。
S604、根据重发指令,通过各目标虚拟客户端向对应的各目标业务服务器重新转发各目标业务元数据。
其中,对于各目标虚拟客户端来说,各目标虚拟客户端可以记录待转发的各目标业务元数据的数据包大小,各目标业务服务器在接收到各目标虚拟客户端转发的目标业务元数据后,可以获取接收的各目标业务元数据的数据包大小,并向各目标虚拟客户端发送包括接收的各目标业务元数据的数据包大小的反馈消息,进而各目标虚拟客户端可以根据该反馈消息和所记录的数据包大小,判断是否发生丢包现象,其中,若记录的各目标业务元数据的数据包大小大于反馈消息指示的数据包大小,则生成重发指令,进一步地,目标虚拟客户端可以根据该重发指令,通过各目标虚拟客户端向对应的各目标业务服务器重新转发各目标业务元数据,避免发生丢包现象,提高数据分流方法的适用性。
可选地,上述通过虚拟服务器接收待分流信令数据,还包括:
基于同步非阻塞输入输出模型,通过虚拟服务器接收待分流信令数据。
可选地,该同步非阻塞输入输出模型具体可以是NIO模型,也可以是其他与NIO模型具有相同数据处理功能的模型,在此不作限定。本申请在此以NIO模型为例进行说明,可选地,基于NIO模型接收待分流信令数据时,可以面向缓冲区基于通道(channel)实现非阻塞接收,保证信令转发服务器的处理性能。在一些实施例中,上述数据分流方法的各步骤具体可基于Netty框架实现,但不以此为限。
可选地,上述方法还包括:信令转发服务器被配置为若确定发生宕机,则生成重启指令;根据重启指令,重启信令转发服务器。
其中,宕机也即死机,可选地,信令转发服务器可以通过内置的宕机检测指令检测是否发生宕机,若确定发生,则通过该配置,信令转发服务器可以生成重启指令,根据重启指令,则可以控制信令转发服务器重启,使得对于一些意外故障,比如短时间断电情况下,可以保证信令转发服务器的高可用。
图7为本申请实施例提供的一种数据分流装置的功能模块示意图,该装置基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。该数据分流装置可以应用于信令转发服务器,所述信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,如图7所示,该数据分流装置100包括:
分片模块110,用于通过所述虚拟服务器接收待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,所述目标业务元数据标识有所属业务类型;
确定模块120,用于根据第一预设映射关系,从多个所述虚拟客户端中确定各所述目标业务元数据对应的各目标虚拟客户端,所述第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;
转发模块130,用于根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,所述第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系。
在可选的实施方式中,所述转发模块130,具体用于根据各所述目标业务元数据的业务类型,确定各所述目标业务元数据的发送优先级;根据各所述目标业务元数据的发送优先级,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据。
在可选的实施方式中,所述转发模块130,还用于接收待注册业务服务器发送的注册消息,所述注册消息包括:待注册业务服务器的标识以及对应的虚拟客户端的标识;根据所述注册消息,更新所述第二预设映射关系。
在可选的实施方式中,所述确定模块120,具体用于根据各所述目标业务元数据所属的业务类型,基于异步消息处理机制,对各所述目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据;根据所述第一预设映射关系,从多个所述虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端。
在可选的实施方式中,所述分片模块110,具体用于对所述待分流信令数据进行解码,得到解码后的待分流信令数据;根据解码后的待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据;所述转发模块130,具体用于通过各所述目标虚拟客户端对各所述目标业务元数据进行编码处理,获取编码后的各目标业务元数据;对所述编码后的各目标业务元数据进行加密处理,通过各所述目标虚拟客户端向对应的各目标业务服务器转发加密后的各所述目标业务元数据。
在可选的实施方式中,所述数据分流装置还包括:重发模块,用于通过各所述目标虚拟客户端记录各所述目标业务元数据的数据包大小;接收各所述目标业务服务器发送的反馈消息,所述反馈消息包括接收的各所述目标业务元数据的数据包大小;根据记录的各所述目标业务元数据的数据包大小和所述反馈消息,生成重发指令;根据所述重发指令,通过各所述目标虚拟客户端向对应的各目标业务服务器重新转发各所述目标业务元数据。
在可选的实施方式中,所述分片模块110,还用于基于同步非阻塞输入输出模型,通过所述虚拟服务器接收待分流信令数据。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上***(system-on-a-chip,简称SOC)的形式实现。
图8为本申请实施例提供的一种电子设备结构示意图,该电子设备可以集成于信令转发服务器中。如图8所示,该电子设备可以包括:处理器210、存储介质220和总线230,存储介质220存储有处理器210可执行的机器可读指令,当电子设备运行时,处理器210与存储介质220之间通过总线230通信,处理器210执行机器可读指令,以执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例的步骤。具体实现方式和技术效果类似,这里不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (7)
1.一种数据分流方法,其特征在于,应用于信令转发服务器,所述信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,所述方法包括:
通过所述虚拟服务器接收待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,所述目标业务元数据标识有所属业务类型;
根据第一预设映射关系,从多个所述虚拟客户端中确定各所述目标业务元数据对应的各目标虚拟客户端,所述第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;
根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,所述第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系;
所述通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,包括:
根据各所述目标业务元数据的业务类型,确定各所述目标业务元数据的发送优先级;
根据各所述目标业务元数据的发送优先级,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据;
所述根据第一预设映射关系,从多个所述虚拟客户端中确定目标虚拟客户端,包括:
根据各所述目标业务元数据所属的业务类型,基于异步消息处理机制,对各所述目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据;
根据所述第一预设映射关系,从多个所述虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端;
待注册服务器向所述信令转发服务器发送注册消息,所述注册消息包括所述待注册服务器的标识以及所述虚拟客户端的标识,所述信令转发服务器接收到所述注册消息后,更新所述第二映射关系。
2.根据权利要求1所述的方法,其特征在于,所述对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,包括:
对所述待分流信令数据进行解码,得到解码后的待分流信令数据;
根据解码后的待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据;
所述根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,包括:
通过各所述目标虚拟客户端对各所述目标业务元数据进行编码处理,获取编码后的各目标业务元数据;
对所述编码后的各目标业务元数据进行加密处理,通过各所述目标虚拟客户端向对应的各目标业务服务器转发加密后的各所述目标业务元数据。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过各所述目标虚拟客户端记录各所述目标业务元数据的数据包大小;
接收各所述目标业务服务器发送的反馈消息,所述反馈消息包括接收的各所述目标业务元数据的数据包大小;
根据记录的各所述目标业务元数据的数据包大小和所述反馈消息,生成重发指令;
根据所述重发指令,通过各所述目标虚拟客户端向对应的各目标业务服务器重新转发各所述目标业务元数据。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述通过所述虚拟服务器接收待分流信令数据,还包括:
基于同步非阻塞输入输出模型,通过所述虚拟服务器接收待分流信令数据。
5.一种数据分流装置,其特征在于,应用于信令转发服务器,所述信令转发服务器中预先配置有虚拟服务器和多个虚拟客户端,所述数据分流装置包括:
分片模块,用于通过所述虚拟服务器接收待分流信令数据,对所述待分流信令数据进行分片处理,得到分片后的多个目标业务元数据,所述目标业务元数据标识有所属业务类型;
确定模块,用于根据第一预设映射关系,从多个所述虚拟客户端中确定各所述目标业务元数据对应的各目标虚拟客户端,所述第一预设映射关系包括:业务元数据所属业务类型和各虚拟客户端之间的映射关系;
转发模块,用于根据第二预设映射关系,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据,所述第二预设映射关系包括:各虚拟客户端和各业务服务器之间的映射关系;根据各所述目标业务元数据的业务类型,确定各所述目标业务元数据的发送优先级;根据各所述目标业务元数据的发送优先级,通过各所述目标虚拟客户端向对应的各目标业务服务器转发各所述目标业务元数据;待注册服务器向所述信令转发服务器发送注册消息,所述注册消息包括所述待注册服务器的标识以及所述虚拟客户端的标识,所述信令转发服务器接收到所述注册消息后,更新所述第二映射关系;
所述确定模块,还用于根据各所述目标业务元数据所属的业务类型,基于异步消息处理机制,对各所述目标业务元数据进行业务维度处理,得到处理后的各目标业务元数据;根据所述第一预设映射关系,从多个所述虚拟客户端中确定处理后的各目标业务元数据对应的各目标虚拟客户端。
6.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-4任一所述数据分流方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-4任一所述数据分流方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110818642.2A CN113535432B (zh) | 2021-07-20 | 2021-07-20 | 数据分流方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110818642.2A CN113535432B (zh) | 2021-07-20 | 2021-07-20 | 数据分流方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535432A CN113535432A (zh) | 2021-10-22 |
CN113535432B true CN113535432B (zh) | 2023-12-15 |
Family
ID=78100417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110818642.2A Active CN113535432B (zh) | 2021-07-20 | 2021-07-20 | 数据分流方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535432B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338549B (zh) * | 2021-12-30 | 2024-02-09 | 南京中孚信息技术有限公司 | 数据流识别处理方法、装置、服务器及存储介质 |
CN115712660B (zh) * | 2022-01-29 | 2023-05-30 | 杭州宇信数字科技有限公司 | 数据存储方法、装置、服务器及存储介质 |
CN115866057A (zh) * | 2022-11-30 | 2023-03-28 | 中国联合网络通信集团有限公司 | 数据的处理方法、装置及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557427A (zh) * | 2009-05-11 | 2009-10-14 | 阿里巴巴集团控股有限公司 | 提供分流信息、实现客户端分流的方法、***及服务器 |
CN102255926A (zh) * | 2010-05-17 | 2011-11-23 | ***通信集团公司 | MapReduce***中的任务分配方法、***及装置 |
CN105550051A (zh) * | 2015-12-25 | 2016-05-04 | 北京奇虎科技有限公司 | 业务请求的异步处理方法及装置 |
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
US9742549B1 (en) * | 2016-09-29 | 2017-08-22 | Analog Devices Global | Apparatus and methods for asynchronous clock mapping |
CN110581893A (zh) * | 2019-09-18 | 2019-12-17 | 西安未来国际信息股份有限公司 | 数据传输方法、装置、路由设备、服务器及存储介质 |
CN111464628A (zh) * | 2020-03-31 | 2020-07-28 | 中国工商银行股份有限公司 | 多路复用异步处理***及方法 |
CN111930515A (zh) * | 2020-09-16 | 2020-11-13 | 北京达佳互联信息技术有限公司 | 数据获取及分配方法、装置、服务器、存储介质 |
CN112396315A (zh) * | 2020-11-17 | 2021-02-23 | 平安普惠企业管理有限公司 | 业务金额策略的分配方法、装置、设备及存储介质 |
CN112839067A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种数据同步方法及装置 |
CN112905928A (zh) * | 2021-05-07 | 2021-06-04 | 杭州米络星科技(集团)有限公司 | 网页刷新方法、装置、电子设备及存储介质 |
-
2021
- 2021-07-20 CN CN202110818642.2A patent/CN113535432B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557427A (zh) * | 2009-05-11 | 2009-10-14 | 阿里巴巴集团控股有限公司 | 提供分流信息、实现客户端分流的方法、***及服务器 |
CN102255926A (zh) * | 2010-05-17 | 2011-11-23 | ***通信集团公司 | MapReduce***中的任务分配方法、***及装置 |
CN105550051A (zh) * | 2015-12-25 | 2016-05-04 | 北京奇虎科技有限公司 | 业务请求的异步处理方法及装置 |
US9742549B1 (en) * | 2016-09-29 | 2017-08-22 | Analog Devices Global | Apparatus and methods for asynchronous clock mapping |
CN106899680A (zh) * | 2017-03-09 | 2017-06-27 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法和装置 |
CN110581893A (zh) * | 2019-09-18 | 2019-12-17 | 西安未来国际信息股份有限公司 | 数据传输方法、装置、路由设备、服务器及存储介质 |
CN112839067A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种数据同步方法及装置 |
CN111464628A (zh) * | 2020-03-31 | 2020-07-28 | 中国工商银行股份有限公司 | 多路复用异步处理***及方法 |
CN111930515A (zh) * | 2020-09-16 | 2020-11-13 | 北京达佳互联信息技术有限公司 | 数据获取及分配方法、装置、服务器、存储介质 |
CN112396315A (zh) * | 2020-11-17 | 2021-02-23 | 平安普惠企业管理有限公司 | 业务金额策略的分配方法、装置、设备及存储介质 |
CN112905928A (zh) * | 2021-05-07 | 2021-06-04 | 杭州米络星科技(集团)有限公司 | 网页刷新方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Rendering differencial performance through intelligent network edge in cloud data centers;Dian Shen等;《Cocurrency and Computation:Practice and Experience》;1-14 * |
一种面向富客户端应用的运行时自适应中间件;赵祺等;《软件学报》;第24卷(第07期);1419-1435+17-18 * |
Also Published As
Publication number | Publication date |
---|---|
CN113535432A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113535432B (zh) | 数据分流方法、装置、电子设备及存储介质 | |
US11228590B2 (en) | Data processing method and apparatus based on mobile application entrance and system | |
CN109639642B (zh) | 基于mqtt的安全认证方法、装置及存储介质 | |
US9781255B1 (en) | Authentication of phone call origination | |
EP2710776B1 (en) | Anonymous signalling | |
CN112738791B (zh) | 基于5g核心网的用户信息关联回填方法、装置、设备和介质 | |
CN104158816A (zh) | 认证方法、装置和服务器 | |
CN111246311A (zh) | 数据传输的方法、装置、存储介质及电子设备 | |
CN104349288A (zh) | 一种消息传输方法及装置 | |
CN113032357A (zh) | 文件的存储方法、装置和服务器 | |
WO2019149006A1 (zh) | 获取、提供无线接入点接入信息的方法、设备以及介质 | |
CN109379764B (zh) | 报文发送方法及装置 | |
US9332405B2 (en) | Short message backup method, mobile terminal, and server | |
CN113014580A (zh) | 文件传输方法、装置、电子设备及存储介质 | |
CN114257562B (zh) | 即时通讯方法、装置、电子设备和计算机可读存储介质 | |
CN106850770B (zh) | 基于云计算服务的高效传输方法 | |
US10785025B1 (en) | Synchronization of key management services with cloud services | |
CN107294704B (zh) | 口令的生成方法、口令的执行方法及终端 | |
WO2016037489A1 (zh) | Rcs垃圾消息的监控方法、装置及*** | |
US20170118444A1 (en) | Accessing Method, System and Storage Medium for Video Conference | |
CN111355793A (zh) | 一种基于HTML5和Python的大文件上传方法 | |
CN110392016B (zh) | 防止流量被劫持的方法、装置和*** | |
CN104573518A (zh) | 文件扫描方法、装置、服务器及*** | |
CN112448932B (zh) | 消息处理的方法及装置 | |
CN113992669A (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 |