CN111262783B - 一种动态路由的方法及装置 - Google Patents
一种动态路由的方法及装置 Download PDFInfo
- Publication number
- CN111262783B CN111262783B CN202010035950.3A CN202010035950A CN111262783B CN 111262783 B CN111262783 B CN 111262783B CN 202010035950 A CN202010035950 A CN 202010035950A CN 111262783 B CN111262783 B CN 111262783B
- Authority
- CN
- China
- Prior art keywords
- channel
- value
- determining
- quality
- quality level
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
Abstract
本发明涉及金融科技(Fintech)领域,并公开了一种动态路由的方法及装置,其中,方法包括:获取多个通道的质量等级;任一个通道中,通道的质量等级是根据通道在预设时段的接入数据量和数据传输的成功率确定的;根据多个通道的质量等级,从多个通道中确定出目标通道;将待发送数据经目标通道发送。该技术方案用以解决现有技术中手动将待发送数据路由至可用传输通道,导致浪费大量人力,效率低,且可能出现数据传输失败的情况的问题。
Description
技术领域
本发明实施例涉及金融科技(Fintech)领域,尤其涉及一种动态路由的方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,计算机技术也不例外,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。
随着互联网技术的发展,越来越多的移动终端会接入至业务系统,服务商提供传输通道以供业务系统与移动终端之间的数据传输,但是服务商的传输通道可能由于传输数据量过大、网络故障、技术故障等原因导致传输通道不可用,现有技术中,一旦检测到某个服务商的传输通道不可用,则会通知服务商运维人员手动将该传输通道关闭,并将待发送数据手动路由至可用的传输通道中,该方式不仅浪费大量人力,效率低,且可能出现数据传输失败的情况。
发明内容
本发明实施例提供一种动态路由的方法及装置,用以解决现有技术中手动将待发送数据路由至可用传输通道,导致浪费大量人力,效率低,且可能出现数据传输失败的情况的问题。
本发明实施例提供的一种动态路由的方法,包括:
获取多个通道的质量等级;任一个通道中,所述通道的质量等级是根据所述通道在预设时段的接入数据量和数据传输的成功率确定的;
根据所述多个通道的质量等级,从所述多个通道中确定出目标通道;
将所述待发送数据经所述目标通道发送。
上述技术方案中,在需要发送数据时,可以先获取多个通道的质量等级,并根据多个通道的质量等级从多个通道中确定目标通道,以用于发送数据,各通道的质量等级是基于通道在预设时段的接入数据量和数据传输的成功率确定的,也就是说,基于通道在预设时段的接入数据量和数据传输的成功率确定是否将数据通过该通道进行发送,通过该方式可以从多个通道中找到服务质量最优的通道作为目标通道。此外,本方案中各通道的质量等级可以随着时间变化,比如,上一时间段为服务质量差的通道,在当前时间段为服务质量优的通道,上一时间段为服务质量优的通道,在当前时间段为服务质量差的通道,本方案通过动态统计各通道的服务质量,可以动态选择目标通道以用于发送数据,无需人工手动调整,即可以实现动态路由选择目标通道,且自动路由选择目标通道的方式可以避免数据传输失败。
可选的,所述通道的质量等级是根据所述通道在预设时段的接入数据量和数据传输的成功率确定的,包括:
获取所述通道在当前时刻的TPS、所述预设时段的接入数据量和所述预设时段的数据传输的成功率;
根据所述当前时刻的TPS,确定所述通道的基础计分值;
根据所述预设时段的接入数据量,确定所述通道的第一调整值;
根据所述预设时段的数据传输的成功率,确定所述通道的第二调整值;
根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值;
根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级。
上述技术方案中,在确定通道质量等级时,先基于通道的TPS确定出基础计分值,然后基于接入数据量和数据传输的成功率确定用于对基础计分值进行调整的调整值,从而采用调整值对基础计分值进行调整,以确定通道的最终计分值,该方式可以准确评估出通道的最终计分值以及所对应的质量等级,从而可以准确确定出目标通道,而且可以动态调整通道的质量等级,实现动态将数据路由至质量较优的通道。
可选的,所述根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级,包括:
若所述最终计分值大于0且小于N1,则确定所述通道为第一质量等级;
若所述最终计分值大于N2且小于N3,则确定所述通道为第二质量等级;
若所述最终计分值大于N4,则确定所述通道为第三质量等级;
其中,0<N1≤N2<N3≤N4,所述第一质量等级优于所述第二质量等级,所述第二质量等级优于所述第三质量等级。
可选的,所述根据所述预设时段的接入数据量,确定所述通道的第一调整值,包括:
获取所述通道在上一统计周期内的质量等级;
若所述通道在上一统计周期内的质量等级为所述第一质量等级,则确定所述第一调整值为N1-N4;
若所述通道在上一统计周期内的质量等级为所述第二质量等级,则根据公式(1)确定所述第一调整值;
所述公式(1)为:
ADJ1=Min(Max(N1,N4×Reuest/Capactity),N3);
其中,ADJ1为第一调整值,Reuest为通道在预设时段的接入数据总量,Capactity为通道在预设时段的可接入数据总量;
若所述通道在上一统计周期内的质量等级为所述第三质量等级,则确定所述第一调整值为N4。
上述技术方案中,对于上一统计周期内属于不同质量等级的通道,提供确定第一调整值的不同方式,更针对性的确定每个通道的调整值,进而更针对性的确定通道的最终计分值。
可选的,所述根据所述当前时刻的TPS,确定所述通道的基础计分值,符合公式(2);
所述公式(2)为:
Base=(NowTPS/MaxTPS)×N4;
其中,Base为基础计分值,NowTPS为当前时刻通道的TPS,MaxTPS为通道的最大TPS。
可选的,所述根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值,符合公式(3);
所述公式(3)为:
Score=(Base+ADJ1)×ADJ2;
其中,Score为最终计分值,Base为基础计分值,ADJ1为第一调整值,ADJ2为第二调整值。
可选的,所述根据所述多个通道的质量等级,从所述多个通道中确定出目标通道,包括:
从所述多个通道中确定质量等级最优的通道;
若所述质量等级最优的通道为至少一个,则根据轮流调度原则从所述至少一个质量等级最优的通道中确定出所述目标通道。
相应的,本发明实施例还提供了一种动态路由的装置,包括:
获取单元、处理单元;
所述获取单元,用于获取多个通道的质量等级;任一个通道中,所述通道的质量等级是所述处理单元根据所述通道在预设时段的接入数据量和数据传输的成功率确定的;
所述处理单元,用于根据所述多个通道的质量等级,从所述多个通道中确定出目标通道;并将所述待发送数据经所述目标通道发送。
可选的,所述处理单元具体用于:
控制所述获取单元获取所述通道在当前时刻的TPS、所述预设时段的接入数据量和所述预设时段的数据传输的成功率;
根据所述当前时刻的TPS,确定所述通道的基础计分值;
根据所述预设时段的接入数据量,确定所述通道的第一调整值;
根据所述预设时段的数据传输的成功率,确定所述通道的第二调整值;
根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值;
根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级。
可选的,所述处理单元具体用于:
若所述最终计分值大于0且小于N1,则确定所述通道为第一质量等级;
若所述最终计分值大于N2且小于N3,则确定所述通道为第二质量等级;
若所述最终计分值大于N4,则确定所述通道为第三质量等级;
其中,0<N1≤N2<N3≤N4,所述第一质量等级优于所述第二质量等级,所述第二质量等级优于所述第三质量等级。
可选的,所述处理单元具体用于:
控制所述获取单元获取所述通道在上一统计周期内的质量等级;
若所述通道在上一统计周期内的质量等级为所述第一质量等级,则确定所述第一调整值为N1-N4;
若所述通道在上一统计周期内的质量等级为所述第二质量等级,则根据公式(1)确定所述第一调整值;
所述公式(1)为:
ADJ1=Min(Max(N1,N4×Reuest/Capactity),N3);
其中,ADJ1为第一调整值,Reuest为通道在预设时段的接入数据总量,Capactity为通道在预设时段的可接入数据总量;
若所述通道在上一统计周期内的质量等级为所述第三质量等级,则确定所述第一调整值为N4。
可选的,所述处理单元具体用于:
根据公式(2)确定所述通道的基础计分值;
所述公式(2)为:
Base=(NowTPS/MaxTPS)×N4;
其中,Base为基础计分值,NowTPS为当前时刻通道的TPS,MaxTPS为通道的最大TPS。
可选的,所述处理单元具体用于:
根据公式(3)确定所述通道的最终计分值;
所述公式(3)为:
Score=(Base+ADJ1)×ADJ2;
其中,Score为最终计分值,Base为基础计分值,ADJ1为第一调整值,ADJ2为第二调整值。
可选的,所述处理单元具体用于:
从所述多个通道中确定质量等级最优的通道;
若所述质量等级最优的通道为至少一个,则根据轮流调度原则从所述至少一个质量等级最优的通道中确定出所述目标通道。
相应的,本发明实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述动态路由的方法。
相应的,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述动态路由的方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种系统架构的示意图;
图2为本发明实施例提供的一种消息网关的结构示意图;
图3为本发明实施例提供的一种动态路由的方法的流程示意图;
图4为本发明实施例提供的一种通道的最终计分值与通道的质量等级的对应关系的示意图;
图5为本发明实施例提供的一种确定通道质量等级的流程示意图;
图6为本发明实施例提供的另一种动态路由的方法的流程示意图;
图7为本发明实施例提供的一种动态路由的装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1示例性的示出了本发明实施例提供动态路由的方法所适用的系统架构,该系统架构可以包括移动终端、消息网关、业务系统;业务系统将待发送数据发送至移动终端时,会先将该待发送数据发送至消息网关,消息网关判断当前所有通道中,哪个通道为优先级最高的通道,或者说哪个通道的质量最好,则会将该待发送数据经该通道发送至移动终端。
图2为本发明实施例提供的一种消息网关的结构示意图,该消息网关中包括实时计分模块、自动路由模块、上报模块和网关前置模块;其中,上报模块用于收集单次发送数据的情况,并将详细数据存储至数据库中;实时计分模块用于对当前所有的通道进行打分,并将打分结果存储至数据库中;自动路由模块用于在业务系统将待发送数据发送至消息网关时,与实时计分模块进行数据交互,并从所有通道中选取一个最优的通道作为数据发送的通道;网关前置模块用于负责与各通道进行数据交互,将待发送数据发送至自动路由模块确定的最优通道中。
需要说明的是,消息网关可以连接两种数据库,一种是关系数据库,一种是K-V数据库,具体实现中,可以是连接Mysql和Redis,上报模块将每个通道单次发送数据的详细数据存储至Mysql中;实时计分模块可以从Mysql中获取各通道发送数据的详细数据,进而根据各通道发送数据的详细数据对各通道进行计分,将各通道的计分结果存储至Redis中,自动路由模块从Redis中读取各通道的计分结果。
基于上述描述,图3示例性的示出了本发明实施例提供的一种动态路由的方法的流程,该流程可以由动态路由的装置执行,该装置可以位于消息网关中,可以是该消息网关。
如图3所示,该流程具体包括:
步骤301,获取多个通道的质量等级;
步骤302,根据多个通道的质量等级,从多个通道中确定出目标通道;
步骤303,将待发送数据经目标通道发送。
通道的质量等级理解成通道的QOS(Quality of Service,服务质量)等级。任一个通道中,通道的质量等级是根据通道在预设时段的接入数据量和数据传输的成功率确定的,也就是说,当前各通道的质量等级是根据各通道在预设时段的接入数据量和数据传输的成功率确定的。
需要提前说明的是,本发明实施例可以将通道划分为三个质量等级,分别是第一质量等级、第二质量等级和第三质量等级,在消息网关选择通路时,第一质量等级的通路的优先级最高,也即,第一质量等级的通道只要没有超过其负载的最大值,则会被优先选择;第二质量等级的通路会提供大量的可靠资源,单服务SLA(Service-Level Agreement,服务等级协议)会比第一质量等级的通道低,当第一质量等级的通道的资源紧张时,或者第一质量等级的通道出现异常时,会选择第二质量等级的通道进行消息发送;第三质量等级的通路的优先级最低,在初始情况下是不会优先被选择的,只有在第一质量等级的通道和第二质量等级的通道都在资源严重紧缺或者出现异常的情况下,才会被选择。
示例性的,第一质量等级的通道为Guaranteed通道,保障成功发送数据,且处理能力强;第二质量等级的通道为Unreliable通道,该类通道为弹性波动,提供的处理能力上下浮动,可能偶尔会出现一些故障,但是能够及时自行修复;第三质量等级的通道为Fluctuate通道,不太可靠,提供的处理能力一般,但是能够在紧急的时候尽力发送。
本发明实施例中,通道的质量等级越低,其最终计分值越大;反之,通道的质量等级越高,其最终计分值越小,具体实现方式中,设置第一质量等级的通道的最终计分值大于0且小于N1,第二质量等级的通道的最终计分值大于N2且小于N3,第三质量等级的通道的最终计分值大于N4,其中,0<N1≤N2<N3≤N4。示例性的,设定N1=2,N2=3,N3=999,N4=1000,则通道的最终计分值与通道的质量等级的对应关系可以如图4所示,最终计分值为0~2的通道,为第一质量等级的通道,可以保障发送数据的成功率;最终计分值为3~999的通道,为第二质量等级的通道;最终计分值为1000分以上的通道,为第三质量等级的通道,需要进行人工干预,不应该通过该通道发送数据。
在计算通道的最终计分值时,可以是获取通道在预设时段的接入数据量,从而确定通道的基础计分值;以及获取通道在预设时段的传输数据的成功率,从而确定对基础计分值的调整值;然后根据调整值对基础计分值进行调整,确定出通道的最终计分值,并基于该通道的最终计分值确定该通道的质量等级。
当然,还可以有另外一种实现方式,根据当前时刻通道的TPS(Transaction PerSecond,每秒事务数)确定通道的基础计分值,然后再根据通道在预设时段的总接入数据量和通道的传输数据的成功率,确定通道的调整值,并基于调整值对基础计分值进行调整。
具体的,参照如图5示出的流程中。
步骤501,获取通道在当前时刻的TPS、预设时段的接入数据量和预设时段的数据传输的成功率;
步骤502,根据当前时刻的TPS,确定通道的基础计分值;
可以是根据公式(2)确定通道的基础计分值,公式(2)为:
Base=(NowTPS/MaxTPS)×N4;
其中,Base为基础计分值,NowTPS为当前时刻通道的TPS,MaxTPS为通道的最大TPS。
由公式(2)可知,当前时刻通道的TPS越大,则当前时刻通道的TPS与通道能够提供的最大TPS的百分比越大,则基础计分值越大,也就是说,当前时刻通道的TPS越大,通道的负载越大,则通道的基础计分值就越大,后续越不容易做为最优通道进行数据传输。
以图4示出的数据为例,基础计分值为当前通道处理消息的TPS和其能够提供的最大TPS的百分比,取其中不含百分比的数值,再乘以10的分值,具体的,可以是Base=(NowTPS/MaxTPS)×1000。
步骤503,根据预设时段的接入数据量,确定通道的第一调整值;
第一调整值又可以理解为计分调整值,即是根据预设时段内该通道的接入数据量对该通道进行计分,然后基于该计分对基础计分值进行调整。
具体的,可以先确定出通道在此次计分时的质量等级,此处,可以是预先规定通道的默认质量等级,比如,通道的默认质量等级为第一质量等级,则可以确定通道在此次计分时的质量等级为第一质量等级;也可以是获取通道在上一统计周期的质量等级,比如,通道在上一统计周期的质量等级为第二质量等级,则可以确定通道在此次计分时的质量等级为第二质量等级。
本发明实施例中,可以设定统计周期,比如,每一分钟设置一个统计周期,即每分钟会计算一次所有通道的质量等级;也可以是对所有通道的环境进行监测,若监测到某个通道环境发生变化,则确定该通道的质量等级。当设定统计周期时,预设时段可以等同于当前统计周期所对应的时段,也可以是当前统计周期的所对应时段中的一小部分时段。
以获取通道在上一统计周期的质量等级为例,在确定通道的第一调整值时,具体可以分为以下三种情况:
第一种情况,若通道在上一统计周期内的质量等级为第一质量等级,则确定第一调整值为N1-N4;
第二种情况,若通道在上一统计周期内的质量等级为第二质量等级,则根据公式(1)确定第一调整值;
公式(1)为:
ADJ1=Min(Max(N1,N4×Reuest/Capactity),N3);
其中,ADJ1为第一调整值,Reuest为通道在预设时段的接入数据总量,Capactity为通道在预设时段的可接入数据总量;
第三种情况,若通道在上一统计周期内的质量等级为第三质量等级,则确定第一调整值为N4。
可以根据如图4中的数据确定通道的第一调整值如表1所示,若通道在上一统计周期内的质量等级为第一质量等级,则确定第一调整值为﹣998;若通道在上一统计周期内的质量等级为第二质量等级,则确定第一调整值为Min(Max(2,1000×Reuest/Capactity),999);若通道在上一统计周期内的质量等级为第三质量等级,则确定第一调整值为1000。
此处,对通道在上一统计周期内的质量等级为第二质量等级时所确定的第一调整值具体说明,当通道的接入数据总量小于其最大可接入数据总量的0.2%时,则该通道的第一调整值为固定值2,否则,设定第一调整值为1000×Reuest/Capactity);当通道的接入数据总量大于其最大可接入数据总量的99.9%时,则该通道的第一调整值为固定值为999,也就是说,通过该方式,可以设定当通道的质量等级为第二质量等级时,其所对应的第一调整值的区间为2至999。
表1
步骤504,根据预设时段的数据传输的成功率,确定通道的第二调整值;
第二调整值又可以理解为成功率调整值,即根据预设时段内该通道的传输数据的成功率,进一步对基础计分值进行调整。
在确定通道的第二调整值时,可以是预先设定传输数据的成功率与第二调整值的对应关系,比如,当某个通道的传输数据的成功率<80%,则可以确定第二调整值大于1,从而拉高该通道的最终计分值。
表2
传输数据的成功率 | 第二调整值 |
97%~100% | 0 |
90%~96% | 0.8 |
80%~89% | 0.9 |
<80% | 1.1 |
其中,传输数据的成功率>97%为SLA的基准线,对应的通道属于是正常通道;而传输数据的成功率<80%的通道则认为是及其不稳定的通道。
步骤505,根据第一调整值和第二调整值对基础计分值进行调整,以确定通道的最终计分值;
在对基础计分值进行调整时,可以是根据公式(3)确定;
公式(3)为:
Score=(Base+ADJ1)×ADJ2;
其中,Score为最终计分值,Base为基础计分值,ADJ1为第一调整值,ADJ2为第二调整值。
此处,为了提高最终计分值的准确性,也可以在公式(3)的基础上,增加根据经验设定的参数,比如,Score=α(Base+ADJ1)×ADJ2,其中,α=0.99或者1.1等。
步骤506,根据通道的最终计分值所属的计分区间,确定通道的质量等级。
本发明实施例中,若最终计分值大于0且小于N1,相当于最终计分值属于第一计分区间,则确定通道为第一质量等级;若最终计分值大于N2且小于N3,相当于最终计分值属于第二计分区间,则确定通道为第二质量等级;若最终计分值大于N4,相当于最终计分值属于第三计分区间,则确定通道为第三质量等级。
此外,还可以是先根据第一调整值对基础计分值进行调整后,确定调整后的基础计分值所在的计分区间,进而确定对应哪一个质量等级,然后采用第二调整值对调整后的基础计分值进一步调整,从而确定所在计分区间的哪一个部分,比如,根据第一调整值对基础计分值进行调整后确定计分值属于第一计分区间,也即对应第一质量等级,然后进一步根据第二调整值对计分值做调整,确定其属于第一计分区间的前半区间,也即对应第一质量等级中的较优等级。
为了更好的解释本发明实施例,提供一个具体的计算通道最终计分值的例子,以图4示出的数据继续说明:
通道1:
假设NowTPS=0,MaxTPS=100,Reuest=0,Capactity=100,发送数据的成功率为96%,则确定:
Base=(NowTPS/MaxTPS)×1000=0;
ADJ1=Min(Max(2,1000×Reuest/Capactity),999)=Min(Max(2,0),999)=2;
Score=(Base+ADJ1)×ADJ2=1.92;
通道1的最终计分值为1.92,小于2,属于第一计分区间,则说明通道1为空闲通道,可以作为第一质量等级的通道;
通道2:
假设NowTPS=10,MaxTPS=100,Reuest=10,Capactity=100,发送数据的成功率为95%,则确定:
Base=(NowTPS/MaxTPS)×1000=100;
ADJ1=Min(Max(2,1000×Reuest/Capactity),999)=Min(Max(2,100),999)=100;
Score=(Base+ADJ1)×ADJ2=190;
通道2的最终计分值为190,大于2小于999,属于第二计分区间,说明通道2还可以继续服务,可以作为第二质量等级的通道;
通道3:
假设NowTPS=98,MaxTPS=100,Reuest=10,Capactity=100,发送数据的成功率为79%,则确定:
Base=(NowTPS/MaxTPS)×1000=980;
ADJ1=Min(Max(2,1000×Reuest/Capactity),999)=Min(Max(2,100),999)=100;
Score=(Base+ADJ1)=1080;
通道3的最终计分值为1080,大于1000,属于第三计分区间,说明通道3已经负载过大,不能继续服务,为第三质量等级的通道。
需要说明的是,比如通道3中,当前统计周期内的质量等级为第三质量等级,则该通道中发送的数据量会逐渐减少,从而通道3的最终计分值会越来越低,直至最终计分值降低到第二计分区间,甚至第一计分区间,从而可以重新作为数据传输的通道。
本发明实施例中,在确定出多个通道的质量等级之后,可以从多个通道中确定质量等级最优的通道,若质量等级最优的通道为至少一个,一种实现方式中,可以是从至少一个质量等级最优的通道中确定最终计分值最低的通道作为目标通道;另一种实现方式中,也可以是根据轮流调度的原则,从至少一个质量等级最优的通道中确定出目标通道。
本发明还提供一个发送数据的具体流程图,可以如图6所示,该流程涉及的执行主体包括业务系统、自动路由模块、实时计分模块、存储模块和服务商通道;业务系统发送数据至自动路由模块,自动路由模块获取到可用服务商通道后,基于实时计分模块对各服务商通道确定的质量等级,确定质量等级最优的服务商通道,进一步基于轮流调度原则,从最优的服务商通道中确定出一个通道作为目标通道,将消息发送至该目标通道,并将发送数据的结果存储至Mysql中。实时计分模块定周期读取Redis中通道在预设时段的接入数据量、TPS、发送数据成功率等,进而根据读取到的数据确定各通道的最终计分值,根据最终计分值确定各通道的质量等级,以供自动路由模块确定出目标通道。
上述技术方案中,在需要发送数据时,可以先获取多个通道的质量等级,并根据多个通道的质量等级从多个通道中确定目标通道,以用于发送数据,各通道的质量等级是基于通道在预设时段的接入数据量和数据传输的成功率确定的,也就是说,基于通道在预设时段的接入数据量和数据传输的成功率确定是否将数据通过该通道进行发送,通过该方式可以从多个通道中找到服务质量最优的通道作为目标通道。此外,本方案中各通道的质量等级可以随着时间变化,比如,上一时间段为服务质量差的通道,在当前时间段为服务质量优的通道,上一时间段为服务质量优的通道,在当前时间段为服务质量差的通道,本方案通过动态统计各通道的服务质量,可以动态选择目标通道以用于发送数据,无需人工手动调整,即可以实现动态路由选择目标通道,且自动路由选择目标通道的方式可以避免数据传输失败。
基于同一发明构思,图7示例性的示出了本发明实施例提供的一种动态路由的装置的结构,该装置可以执行动态路由的方法的流程。
所述装置,包括:
获取单元701、处理单元702;
所述获取单元701,用于获取多个通道的质量等级;任一个通道中,所述通道的质量等级是所述处理单元702根据所述通道在预设时段的接入数据量和数据传输的成功率确定的;
所述处理单元702,用于根据所述多个通道的质量等级,从所述多个通道中确定出目标通道;并将所述待发送数据经所述目标通道发送。
可选的,所述处理单元702具体用于:
控制所述获取单元701获取所述通道在当前时刻的TPS、所述预设时段的接入数据量和所述预设时段的数据传输的成功率;
根据所述当前时刻的TPS,确定所述通道的基础计分值;
根据所述预设时段的接入数据量,确定所述通道的第一调整值;
根据所述预设时段的数据传输的成功率,确定所述通道的第二调整值;
根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值;
根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级。
可选的,所述处理单元702具体用于:
若所述最终计分值大于0且小于N1,则确定所述通道为第一质量等级;
若所述最终计分值大于N2且小于N3,则确定所述通道为第二质量等级;
若所述最终计分值大于N4,则确定所述通道为第三质量等级;
其中,0<N1≤N2<N3≤N4,所述第一质量等级优于所述第二质量等级,所述第二质量等级优于所述第三质量等级。
可选的,所述处理单元702具体用于:
控制所述获取单元701获取所述通道在上一统计周期内的质量等级;
若所述通道在上一统计周期内的质量等级为所述第一质量等级,则确定所述第一调整值为N1-N4;
若所述通道在上一统计周期内的质量等级为所述第二质量等级,则根据公式(1)确定所述第一调整值;
所述公式(1)为:
ADJ1=Min(Max(N1,N4×Reuest/Capactity),N3);
其中,ADJ1为第一调整值,Reuest为通道在预设时段的接入数据总量,Capactity为通道在预设时段的可接入数据总量;
若所述通道在上一统计周期内的质量等级为所述第三质量等级,则确定所述第一调整值为N4。
可选的,所述处理单元702具体用于:
根据公式(2)确定所述通道的基础计分值;
所述公式(2)为:
Base=(NowTPS/MaxTPS)×N4;
其中,Base为基础计分值,NowTPS为当前时刻通道的TPS,MaxTPS为通道的最大TPS。
可选的,所述处理单元702具体用于:
根据公式(3)确定所述通道的最终计分值;
所述公式(3)为:
Score=(Base+ADJ1)×ADJ2;
其中,Score为最终计分值,Base为基础计分值,ADJ1为第一调整值,ADJ2为第二调整值。
可选的,所述处理单元702具体用于:
从所述多个通道中确定质量等级最优的通道;
若所述质量等级最优的通道为至少一个,则根据轮流调度原则从所述至少一个质量等级最优的通道中确定出所述目标通道。
基于同一发明构思,本发明实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述动态路由的方法。
基于同一发明构思,本发明实施例还提供了一种计算机可读非易失性存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述动态路由的方法。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种动态路由的方法,其特征在于,包括:
获取多个通道的质量等级;任一个通道中,所述通道的质量等级是根据所述通道在预设时段的接入数据量和数据传输的成功率确定的;
根据所述多个通道的质量等级,从所述多个通道中确定出目标通道;
将待发送数据经所述目标通道发送;
所述通道的质量等级是根据所述通道在预设时段的接入数据量和数据传输的成功率确定的,包括:
获取所述通道在当前时刻的每秒事务数TPS、所述预设时段的接入数据量和所述预设时段的数据传输的成功率;
根据所述当前时刻的TPS,确定所述通道的基础计分值;
根据所述预设时段的接入数据量,确定所述通道的第一调整值;
根据所述预设时段的数据传输的成功率,确定所述通道的第二调整值;
根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值;
根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级。
2.如权利要求1所述的方法,其特征在于,所述根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级,包括:
若所述最终计分值大于0且小于N1,则确定所述通道为第一质量等级;
若所述最终计分值大于N2且小于N3,则确定所述通道为第二质量等级;
若所述最终计分值大于N4,则确定所述通道为第三质量等级;
其中,0<N1≤N2<N3≤N4,所述第一质量等级优于所述第二质量等级,所述第二质量等级优于所述第三质量等级。
3.如权利要求2所述的方法,其特征在于,所述根据所述预设时段的接入数据量,确定所述通道的第一调整值,包括:
获取所述通道在上一统计周期内的质量等级;
若所述通道在上一统计周期内的质量等级为所述第一质量等级,则确定所述第一调整值为N1-N4;
若所述通道在上一统计周期内的质量等级为所述第二质量等级,则根据公式(1)确定所述第一调整值;
所述公式(1)为:
ADJ1=Min(Max(N1,N4×Reuest/Capactity),N3)
其中,ADJ1为第一调整值,Reuest为通道在预设时段的接入数据总量,Capactity为通道在预设时段的可接入数据总量;
若所述通道在上一统计周期内的质量等级为所述第三质量等级,则确定所述第一调整值为N4。
4.如权利要求1所述的方法,其特征在于,所述根据所述当前时刻的TPS,确定所述通道的基础计分值,符合公式(2);
所述公式(2)为:
Base=(NowTPS/MaxTPS)×N4;
其中,Base为基础计分值,NowTPS为当前时刻通道的TPS,MaxTPS为通道的最大TPS。
5.如权利要求1所述的方法,其特征在于,所述根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值,符合公式(3);
所述公式(3)为:
Score=(Base+ADJ1)×ADJ2;
其中,Score为最终计分值,Base为基础计分值,ADJ1为第一调整值,ADJ2为第二调整值。
6.如权利要求1所述的方法,其特征在于,所述根据所述多个通道的质量等级,从所述多个通道中确定出目标通道,包括:
从所述多个通道中确定质量等级最优的通道;
若所述质量等级最优的通道为至少一个,则根据轮流调度原则从所述至少一个质量等级最优的通道中确定出所述目标通道。
7.一种动态路由的装置,其特征在于,包括:
获取单元、处理单元;
所述获取单元,用于获取多个通道的质量等级;任一个通道中,所述通道的质量等级是所述处理单元根据所述通道在预设时段的接入数据量和数据传输的成功率确定的;
所述处理单元,用于根据所述多个通道的质量等级,从所述多个通道中确定出目标通道;并将待发送数据经所述目标通道发送;
所述处理单元,具体用于:获取所述通道在当前时刻的每秒事务数TPS、所述预设时段的接入数据量和所述预设时段的数据传输的成功率;根据所述当前时刻的TPS,确定所述通道的基础计分值;根据所述预设时段的接入数据量,确定所述通道的第一调整值;根据所述预设时段的数据传输的成功率,确定所述通道的第二调整值;根据所述第一调整值和所述第二调整值对所述基础计分值进行调整,以确定所述通道的最终计分值;根据所述通道的最终计分值所属的计分区间,确定所述通道的质量等级。
8.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至6任一项所述的方法。
9.一种计算机可读非易失性存储介质,其特征在于,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010035950.3A CN111262783B (zh) | 2020-01-14 | 2020-01-14 | 一种动态路由的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010035950.3A CN111262783B (zh) | 2020-01-14 | 2020-01-14 | 一种动态路由的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111262783A CN111262783A (zh) | 2020-06-09 |
CN111262783B true CN111262783B (zh) | 2022-04-26 |
Family
ID=70950411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010035950.3A Active CN111262783B (zh) | 2020-01-14 | 2020-01-14 | 一种动态路由的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111262783B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112511422A (zh) * | 2020-11-18 | 2021-03-16 | 平安普惠企业管理有限公司 | 数据的传输方法、装置、计算机设备及存储介质 |
CN115086240A (zh) * | 2021-03-12 | 2022-09-20 | 中国电信股份有限公司 | 网络流量调整方法、装置与网络系统 |
CN116981018B (zh) * | 2023-09-25 | 2024-02-13 | 杭州斯诺康技术有限公司 | 智能设备与路由器自动连接的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2903194A1 (en) * | 2012-09-29 | 2015-08-05 | Sony Corporation | Base station, wireless communication terminal, wireless communication system, and wireless communication method |
CN109245849A (zh) * | 2017-07-11 | 2019-01-18 | 中国移动通信有限公司研究院 | 调制编码方法、装置、基站及计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013504951A (ja) * | 2009-09-15 | 2013-02-07 | ロックスター ビーアイディーシーオー,エルピー | Mcsレベルを調整するための方法及び基地局 |
CN101917492B (zh) * | 2010-08-06 | 2013-06-05 | 北京乾唐视联网络科技有限公司 | 一种新型网的通信方法及系统 |
CN108173894A (zh) * | 2016-12-07 | 2018-06-15 | 阿里巴巴集团控股有限公司 | 服务器负载均衡的方法、装置及服务器设备 |
CN106899448B (zh) * | 2017-01-22 | 2019-06-28 | 中国人民解放军信息工程大学 | 适用于网络状态及性能测量的一体化动态赋权评估方法 |
CN109246003A (zh) * | 2017-07-11 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 一种进行网络链路切换的方法和系统 |
CN108901001B (zh) * | 2018-05-30 | 2021-08-20 | 珠海云洲智能科技股份有限公司 | 一种无人船通信方法及系统 |
CN110071977B (zh) * | 2019-04-25 | 2022-04-01 | 北京风行极客科技有限公司 | 一种数据传输方法及装置 |
-
2020
- 2020-01-14 CN CN202010035950.3A patent/CN111262783B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2903194A1 (en) * | 2012-09-29 | 2015-08-05 | Sony Corporation | Base station, wireless communication terminal, wireless communication system, and wireless communication method |
CN109245849A (zh) * | 2017-07-11 | 2019-01-18 | 中国移动通信有限公司研究院 | 调制编码方法、装置、基站及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
基于SDN的云架构网络高确定性流量控制方法;高平等;《计算机工程》;20181215(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111262783A (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111262783B (zh) | 一种动态路由的方法及装置 | |
CN108768877B (zh) | 一种突发流量的分配方法、装置及代理服务器 | |
CN106453125B (zh) | 一种基于实时负载率的远程服务调用负载均衡系统 | |
CN110659123B (zh) | 一种基于消息的分布式任务分发调度方法及装置 | |
CN108173698B (zh) | 网络服务管理方法、装置、服务器及存储介质 | |
US10652360B2 (en) | Access scheduling method and apparatus for terminal, and computer storage medium | |
CN107580023A (zh) | 一种动态调整任务分配的流处理作业调度方法及系统 | |
CN109981744B (zh) | 数据的分发方法、装置、存储介质及电子设备 | |
CN107205030B (zh) | 服务器资源调度方法及系统 | |
EP3758325A1 (en) | Traffic limiting method and system | |
CN107819797B (zh) | 访问请求处理方法和装置 | |
CN108770017B (zh) | 一种无线资源动态均衡方法及系统 | |
WO2011088785A1 (zh) | 多模基站系统的业务处理资源的调整方法及装置 | |
CN108494788A (zh) | 数据的传输方法、数据传输装置及计算机可读存储介质 | |
CN112711479A (zh) | 服务器集群的负载均衡系统、方法、装置和存储介质 | |
CN102156722A (zh) | 一种大批量数据处理系统及方法 | |
CN112363834A (zh) | 任务处理方法、装置、终端和存储介质 | |
CN110413393B (zh) | 集群资源管理方法、装置、计算机集群及可读存储介质 | |
CN109670932B (zh) | 信贷数据核算方法、装置、系统和计算机存储介质 | |
CN107809323B (zh) | 一种资源的控制方法、装置及系统 | |
CN114443241A (zh) | 一种任务动态调度方法、任务下发方法及其装置 | |
CN114500661A (zh) | 一种限流设备、方法、装置及存储介质 | |
CN111459651B (zh) | 一种负载均衡方法、装置、存储介质及调度系统 | |
CN112395058A (zh) | 任务调控装置、方法和系统 | |
CN111158899A (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 |