CN115361339B - 流量控制方法、装置、电子设备和存储介质 - Google Patents
流量控制方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115361339B CN115361339B CN202210977867.7A CN202210977867A CN115361339B CN 115361339 B CN115361339 B CN 115361339B CN 202210977867 A CN202210977867 A CN 202210977867A CN 115361339 B CN115361339 B CN 115361339B
- Authority
- CN
- China
- Prior art keywords
- flow control
- transaction
- time period
- control strategy
- transaction request
- 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 63
- 238000011217 control strategy Methods 0.000 claims abstract description 163
- 238000005111 flow chemistry technique Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 59
- 238000004590 computer program Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 12
- 230000015654 memory Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种流量控制方法、装置、电子设备和存储介质,可用于互联网技术领域或金融领域,该方法包括:预先设定交易返回率与交易通过率的对应关系表,对应关系表中的每一个对应关系具有关联的流量控制策略,流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;根据在前一时间段进行流量控制后的交易请求的执行结果,确定前一时间段的交易返回率;根据前一时间段的交易返回率,从对应关系表中确定流量控制策略;根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,前一时间段和后一时间段构成一个流量控制周期。
Description
技术领域
本公开涉及互联网技术领域,具体涉及一种流量控制方法、装置、电子设备和存储介质。
背景技术
随着互联网的发展,各种线下业务也逐渐转化为线上业务,线上业务的数据量增加,对于系统或者服务器等的业务处理能力具有较高的要求。线上业务在不同的时段,不同的时间业务波动较大,即系统或者服务器需要处理的流量大幅增加,例如双十一、纪念币秒杀等时间段,业务的波动(流量的增加)对银行业务系统的稳定性带来巨大的挑战,当某类系统资源(比如关键表的锁资源)不可用或访问时间较长时,交易响应时间容易受到影响,更严重的可能引发联机易堵塞,同时也容易造成一个节点堵塞扩展到其他节点,引起整个业务系统故障。因此,对于系统或者服务器的流量或者业务波动等问题,现有技术中一种解决方案是通过提前实施性能容量评估,在业务高峰前实施系统扩容。比如双十一,根据往年的业务高峰及增长情况提前实践扩容,从而防止业务流量大幅增加的情况下系统或者服务器故障。现有技术中另一种解决方案是在业务接入侧实施流量控制,避免影响核心业务系统。然而上述解决方案中,提前扩容一般比较适合固定的业务促销,比如双十一,对于突发的,由银行的合作伙伴自行发起的场景无法进行适用。业务接入侧实施流控,主要在于业务接入侧的性能容量跟银行核心业务系统的性能容量不匹配,无法做到精准流控。
发明内容
有鉴于此,本公开提供一种流量控制方法、装置、电子设备和存储介质,至少部分地解决了由于流量波动导致的服务异常的问题,并且可以根据前一时间段的交易请求的执行结果调整后一时间的流量控制策略,实现对流量的准确控制,并且可以应用于各种场景。
本公开的第一方面提供了一种流量控制方法,包括:预先设定交易返回率与交易通过率的对应关系表,所述对应关系表中的每一个对应关系具有关联的流量控制策略,所述流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率;根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略;根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,所述后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,所述前一时间段和所述后一时间段构成一个流量控制周期。
在本公开的一些示例性实施例中,所述根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率,包括:统计前一时间段进行流量处理后的交易请求的数目,生成前一时间段的交易总量;根据每一个交易请求的开始时间和返回时间,确定每一个交易请求的交易时长;根据所述交易时长确定正常交易,所述正常交易的交易时长小于设定交易时长;根据所述正常交易的数目和所述交易总量,确定前一时间段的交易返回率。
在本公开的一些示例性实施例中,所述交易请求的交易类型包括主要交易请求和次要交易请求,所述根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略,包括:当所述前一时间段的交易返回率满足第一数值区间,从所述对应关系表中确定的流量控制策略为非流量控制策略,所述非流量控制策略对所述后一时间段接收的交易请求不进行流量控制;当所述前一时间段的交易返回率满足第二数值区间,从所述对应关系表中确定的流量控制策略为次要流量控制策略,所述次要流量控制策略对所述后一时间段接收的交易请求中的次要交易请求进行流量控制;当所述前一时间段的交易返回率满足第三数值区间,从所述对应关系表中确定的流量控制策略为主要流量控制策略,所述主要流量控制策略对所述后一时间段接收的交易请求中的主要交易请求进行流量控制,拒绝所述后一时间段接收的交易请求中的次要交易请求,所述第一数值区间中的数值大于所述第二数值区间中的数值,所述第二数值区间中的数值大于所述第三数值区间中的数值。
在本公开的一些示例性实施例中,所述根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,包括:根据确定的流量控制策略,判断所述后一时间段接收的交易请求的交易类型;根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,所述每个交易请求的交易类型与所述流量控制策略中需要进行流量控制的交易类型相同;根据确定的流量控制策略中的交易通过率与所述随机数的比较结果,对与所述随机数相关联的交易请求进行随机控制通过,使所述后一时间段通过的所述交易请求的通过率满足确定的流量控制策略中的交易通过率。
在本公开的一些示例性实施例中,所述次要流量控制策略包括多个次要流量控制子策略,所述次要流量控制策略具有次要交易通过率数值区间,每个次要流量控制子策略对应具有不同的次要交易通过率数值子区间,所述多个次要流量控制子策略的多个次要交易通过率数值子区间构成所述次要交易通过率数值区间。
在本公开的一些示例性实施例中,所述主要流量控制策略包括多个主要流量控制子策略,所述主要流量控制策略具有主要交易通过率数值区间,每个主要流量控制子策略对应具有不同的主要交易通过率数值子区间,所述多个主要流量控制子策略的多个主要交易通过率数值子区间构成所述主要交易通过率数值区间。
在本公开的一些示例性实施例中,所述的流量控制方法还包括:在根据确定的所述流量控制策略,对后一时间段接收的交易请求进行随机控制通过以实现流量控制之后,根据在后一时间段进行流量控制后的交易请求的执行结果,确定后一时间段的交易返回率,所述后一时间段的交易返回率用于确定下一个所述流量控制周期的前一时间段的流量控制策略。
在本公开的一些示例性实施例中,所述的流量控制方法还包括:根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的慢交易返回率,根据所述慢交易返回率生成预警信号。
本公开实施例的第二方面,提供了一种流量控制装置,包括:设定模块,配置为预先设定交易返回率与交易通过率的对应关系表,所述对应关系表中的每一个对应关系具有关联的流量控制策略,所述流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;第一确定模块,配置为根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率;第二确定模块,配置为根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略;流量控制模块,配置为根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,所述后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,所述前一时间段和所述后一时间段构成一个流量控制周期。
在本公开的一些示例性实施例中,所述第一确定模块包括第一确定单元,第一确定单元配置为:统计前一时间段进行流量处理后的交易请求的数目,生成前一时间段的交易总量;根据每一个交易请求的开始时间和返回时间,确定每一个交易请求的交易时长;根据所述交易时长确定正常交易,所述正常交易的交易时长小于设定交易时长;根据所述正常交易的数目和所述交易总量,确定前一时间段的交易返回率。
在本公开的一些示例性实施例中,所述交易请求的交易类型包括主要交易请求和次要交易请求,第二确定模块包括第二确定单元,第二确定单元配置为:当所述前一时间段的交易返回率满足第一数值区间,从所述对应关系表中确定的流量控制策略为非流量控制策略,所述非流量控制策略对所述后一时间段接收的交易请求不进行流量控制;当所述前一时间段的交易返回率满足第二数值区间,从所述对应关系表中确定的流量控制策略为次要流量控制策略,所述次要流量控制策略对所述后一时间段接收的交易请求中的次要交易请求进行流量控制;当所述前一时间段的交易返回率满足第三数值区间,从所述对应关系表中确定的流量控制策略为主要流量控制策略,所述主要流量控制策略对所述后一时间段接收的交易请求中的主要交易请求进行流量控制,拒绝所述后一时间段接收的交易请求中的次要交易请求,所述第一数值区间中的数值大于所述第二数值区间中的数值,所述第二数值区间中的数值大于所述第三数值区间中的数值。
在本公开的一些示例性实施例中,流量控制模块包括流量控制单元,流量控制单元配置为:根据确定的流量控制策略,判断所述后一时间段接收的交易请求的交易类型;根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,所述每个交易请求的交易类型与所述流量控制策略中需要进行流量控制的交易类型相同;根据确定的流量控制策略中的交易通过率与所述随机数的比较结果,对与所述随机数相关联的交易请求进行随机控制通过,使所述后一时间段通过的所述交易请求的通过率满足确定的流量控制策略中的交易通过率。
在本公开的一些示例性实施例中,流量控制装置还包括第三确定模块,第三确定模块配置为:在根据确定的所述流量控制策略,对后一时间段接收的交易请求进行随机控制通过以实现流量控制之后,根据在后一时间段进行流量控制后的交易请求的执行结果,确定后一时间段的交易返回率,所述后一时间段的交易返回率用于确定下一个所述流量控制周期的前一时间段的流量控制策略。
在本公开的一些示例性实施例中流量控制装置还包括生成模块,所述生成模块配置为:根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的慢交易返回率,根据所述慢交易返回率生成预警信号。
本公开实施例的第三方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现根据上文所述的方法。
本公开实施例的第四方面,提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时,实现根据上文所述的方法。
本公开实施例的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现根据上文所述的方法。
根据本公开的实施例,通过在流量控制策略中设置不同的流量控制策略,例如非流量控制策略、次要流量控制策略以及主要流量控制策略,从而实现针对不同的流量类型进行精确控制。根据对进行流量控制后的交易请求的执行结果来确定交易返回率,可以获知交易请求的具体执行情况,并根据交易返回率来确定后一时间段的流量控制策略,从而保证流量控制策略可以根据当前系统的处理能力进行自动调整,保证具有最高的处理效率。通过采用随机控制通过的方式进行流量控制,保证在进行流量控制时的稳定性,防止因出现大幅度限流导致的系统崩溃且无法自行恢复的问题。本公开的流量控制策略可以实现自动根据交易请求的处理能力对流量进行控制,同时具有较好的稳定性。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的可以应用流量控制方法的示例性系统架构;
图2示意性示出了根据本公开实施例的流量控制方法的流程图;
图3示意性示出了根据本公开实施例的流量控制方法在操作S220的流程示意图;
图4示意性示出了根据本公开实施例的流量控制方法在操作S230的流程示意图;
图5示意性示出了根据本公开实施例的流量控制方法在操作S240的流程示意图;
图6示意性示出了根据本公开实施例的流量控制方法在操作S300的流程示意图;
图7示意性示出了根据本公开实施例的流量控制方法在操作S400的流程示意图;
图8示意性示出了根据本公开实施例的流量控制装置的框图;
图9示意性示出了根据本公开实施例的用于实现流量控制方法的电子设备的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。
在本公开的实施例中,术语“交易返回率”表示在根据交易请求执行交易后,返回的交易结果的交易量与总的交易量的商,例如,交易返回率=返回的交易量/总的交易量。
术语“交易通过率”表示在对交易请求进行控制的过程中,控制通过的交易请求的数目与总的交易请求的数目的商,例如,交易通过率=通过的交易请求的数目/总的交易请求的数目。
术语“随机控制通过”表示,在接收到交易请求后,对接收的每一个交易请求设定一个与该交易请求关联的随机数,当随机数满足预设条件,则该交易请求可以通过,若该随机数不满足预设条件,则该交易请求不可以通过。
术语“流量控制周期”表示,在根据前一时间段的交易请求的执行结果,对后一时间段的交易请求的流量控制策略确定的一个周期。每一个流量控制周期可以实现对流量控制策略进行一次调整。
在本公开的技术方案中,所涉及的用户个人信息的获取、存储和应用等,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。在本公开的技术方案中,所涉及的用户个人信息的获取、存储和应用等操作,均获得了用户的授权。
为了解决相关技术中无法根据对交易请求的处理能力来对流量进行准确控制的问题,本公开的实施例提供了一种流量控制方法、装置、电子设备和存储介质,可以有效实现根据前一时间段的交易请求的执行结果来对后一时间段的流量控制策略进行调整,可以实现自动根据交易请求的处理能力对流量进行控制,同时具有较好的稳定性。
本公开的流量控制方法包括:预先设定交易返回率与交易通过率的对应关系表,对应关系表中的每一个对应关系具有关联的流量控制策略,流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;根据在前一时间段进行流量控制后的交易请求的执行结果,确定前一时间段的交易返回率;根据前一时间段的交易返回率,从对应关系表中确定流量控制策略;根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,前一时间段和所述后一时间段构成一个流量控制周期。
根据本公开的实施例,通过在流量控制策略中设置不同的流量控制策略,例如非流量控制策略、次要流量控制策略以及主要流量控制策略,从而实现针对不同的流量类型进行精确控制。根据对进行流量控制后的交易请求的执行结果来确定交易返回率,可以获知交易请求的具体执行情况,并根据交易返回率来确定后一时间段的流量控制策略,从而保证流量控制策略可以根据当前系统的处理能力进行自动调整,保证具有最高的处理效率。通过采用随机控制通过的方式进行流量控制,保证在进行流量控制时的稳定性,防止因出现大幅度限流导致的系统崩溃且无法自行恢复的问题。本公开的流量控制策略可以实现自动根据交易请求的处理能力对流量进行控制,同时具有较好的稳定性。
图1示意性示出了根据本公开实施例的可以应用流量控制方法的示例性系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。需要说明的是,本公开实施例提供的流量控制方法、装置、电子设备和可读存储介质可用于互联网技术领域、金融领域的相关方面,也可用于除金融领域之外的多种领域,本公开实施例提供的流量控制方法、装置、电子设备和可读存储介质对应用领域不做限定。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102,网络103,流量控制服务器104以及业务处理服务器105。
网络103用以在终端设备101、102和流量控制服务器104以及业务处理服务器105之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102通过网络103与流量控制服务器104以及业务处理服务器105交互,以接收或发送数据、指令等。终端设备101、102上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例),终端设备101、102用于从业务处理服务器105中获取数据,或者向业务处理服务器105发送数据请求等。
终端设备101、102可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
流量控制服务器104可以为终端设备101、102和业务处理服务器105之间提供流量控制服务。
业务处理服务器105可以是提供各种数据库服务的服务器,例如对用户利用终端设备101、102所浏览的网站的数据提供数据支持的业务处理服务器(仅为示例)。业务处理服务器可以对接收到的用户请求等数据进行分析等,并根据用户的请求,并将数据服务库服务器中的数据(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的流量控制方法一般可以由流量控制服务器104执行,相应地,本公开实施例所提供的流量控制装置一般可以设置于流量控制服务器104中。本公开实施例所提供的流量控制方法也可以由不同于流量控制服务器104且能够与终端设备101、102和/或业务处理服务器105通信的其他流量控制服务器执行。相应地,本公开实施例所提供的流量控制装置也可以设置于不同于终端设备101、102且能够与终端设备101、102和/或业务处理服务器105通信的其他流量控制服务器内。
应该理解,图1中的终端设备、网络和流量控制服务器、业务处理服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和流量控制服务器、业务处理服务器。
图2示意性示出了根据本公开实施例的流量控制方法的流程图。本公开实施例的流量控制方法可以应用于如图1所示的流量控制服务器,例如CHILD SERVER。如图2所示,本公开实施例的流量控制方法的流程200包括操作S210至操作S240。
在操作S210中,预先设定交易返回率与交易通过率的对应关系表,对应关系表中的每一个对应关系具有关联的流量控制策略,流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略。
在本公开的实施例中,交易请求可以包括主要交易请求和次要交易请求。以银行业务为例,主要交易请求例如可以是转账、付款等较为重要的交易请求。次要交易请求例如可以是查询账户信息、查询账户余额、查询流水等较为次要的交易请求。
非流量控制策略可以是针对所有的交易请求不进行流量控制。次要流量控制策略例如可以是针对次要交易请求进行流量控制,而对主要交易请求不进行流量控制。主要流量控制策略例如可以是针对主要交易请求进行流量控制,而针对次要交易请求直接拒绝所有的次要交易请求,从而保证主要交易请求的实现。通过将流量控制策略设置成多个,并且可以针对不同的交易请求进行不同的处理,保证在对交易请求的处理能力发生变化时,可以根据实际的处理能力进行适应性调整,保证处理能力的最佳状态,同时避免因流量超载导致的业务崩溃等问题。
在本公开的实施例中,交易返回率与交易通过率的对应关系表可以是交易返回率的阈值与交易通过率的阈值相对应,例如,交易返回率在80%至100%的区域,对应的交易通过率为100%;交易返回率在70%至80%的区域,对应的交易通过率为90%等,交易返回率与交易通过率之间的对应关系可以根据历史经验进行设定,同时也可以根据实际的处理能力对对应关系表中的具体对应关系进行细致调整。对应关系表中的每一个对应关系具有关联的流量控制策略,其中每一个对应关系具有的流量控制策略可以相同,也可以不相同。此处的流量控制策略是指上文所述的非流量控制策略、次要流量控制策略以及主要流量控制策略。例如对应关系表中的两个具体的交易返回率与交易通过率的对应关系可以对应于同一个流量控制策略,也可以对应于不同的流量控制策略。
通过预先设定交易返回率与交易通过率的对应关系表,对应关系表中的每一个对应关系具有关联的流量控制策略,便于根据前一时间段的交易请求的执行结果,对后一时间段的流量控制策略进行调整,使得系统在充分利用流量处理能力的同时,保证具有最大的流量通过,提高效率。
在操作S220中,根据在前一时间段进行流量控制后的交易请求的执行结果,确定前一时间段的交易返回率。
在本公开的实施例中,交易返回率可以反映出对交易请求的处理能力,例如,当业务服务器对于交易请求进行执行后,交易返回率较低时,则表明业务服务器的处理能力较弱,此时需要降低交易请求的流量,从而防止大量的流量涌入导致业务服务器崩溃等问题。
在操作S230中,根据前一时间段的交易返回率,从对应关系表中确定流量控制策略。
由于对应关系表中的每一个对应关系具有关联的流量控制策略,在获取了交易返回率后,可以根据交易返回率来确定与该流量返回率相关联的流量控制策略,从而实现对后一时间段的流量进行调整,实现根据交易请求的处理能力对流量进行有效调整。
在操作S240中,根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,前一时间段和后一时间段构成一个流量控制周期。
在本公开的实施例中,通过前一时间段的交易返回率来确定具体的流量控制策略,并根据确定的流量控制策略对后一时间段接收的交易请求进行流量控制,实现根据交易请求的执行结果来实时调整控制流量。通过随机控制通过的方式,可以保证通过的每一个交易请求具有一定的随机性,防止因一次性通过的流量较大时发生阻塞,无法实现流量控制的问题。
当交易请求的流量较大时,需要对交易请求进行流量控制,而在流量控制过程中,若采用根据流量通过的总量对流量进行控制的方式(即按照交易通过率对总的流量进行控制,例如交易通过率为80%,则先通过80%,然后针对后续的20%进行控制,拒绝后续的20%的交易请求),则无法有效实现对流量控制,即当前80%在处理过程中仍然是在单位时间内进入业务服务器进行处理的,即业务服务器的处理负载未进行有效的降低,并且,后续的20%的交易请求直接拒绝,导致业务服务器空闲,浪费业务服务器的处理能力。本公开通过采用随机控制通过的方式,对每一个交易请求进行随机控制通过,不会出现交易请求大量进入业务服务器进行处理的情况,可以有效降低业务服务器的处理能力。下文将对随机控制通过的方式进行详细说明。通过随机控制通过的方式,使后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,即满足业务服务器的最大处理能力的交易通过率,在该交易通过率下,业务服务器针对通过的交易请求具有最大的处理能力,保证处理效率。
在本公开的实施例中,前一时间段和后一时间段构成一个流量控制周期,即在该流量控制周期内可以实现根据交易请求的执行结果来对流量进行控制,实现交易处理能力的最大化。
下面结合图3至图8对本公开实施例的流量控制方法的具体流程进行详细说明。
图3示意性示出了根据本公开实施例的流量控制方法在操作S220的流程示意图。
如图3所示,操作S220包括操作S221至操作S224。
在操作S221中,统计前一时间段进行流量处理后的交易请求的数目,生成前一时间段的交易总量。
在本公开的实施例中,前一时间段进行流量处理后的交易请求具有一定的数目,通过对该数目统计,可以生成该前一时间段的交易总量,该交易总量例如可以是进行流量控制后的交易请求,从而便于计算针对交易总量的具体交易返回率。
在操作S222中,根据每一个交易请求的开始时间和返回时间,确定每一个交易请求的交易时长。
交易请求在发送至业务服务器时,具有交易请求的开始时间,当交易请求被业务服务器处理完成后返回时,具有交易返回时间,通过统计每一个交易请求的开始时间和返回时间,用于确定出每一个交易在业务服务器进行处理的总的交易时长。根据交易时长可以确定出交易中的正常交易、慢交易或者异常交易等等。
在操作S223中,根据交易时长确定正常交易,正常交易的交易时长小于设定交易时长。
在本公开的实施例中,设定交易时长例如可以是指交易超时时长,当交易时长超过该交易超时时长则为超时交易,当交易时长小于该交易超时时长则为正常交易。正常交易的时长小于设定交易时长,例如5秒,则在处理交易请求过程中,交易开始时间和交易返回之间的总时长小于5秒,则均认为是正常交易。根据正常交易的交易时长,可以统计出在前一时间段中的所有的正常交易的数目。
在操作S224中,根据正常交易的数目和交易总量,确定前一时间段的交易返回率。
根据操作S223中确定的正常交易的数目和操作S221中确定的交易总量,可以确定出前一时间段的交易返回率。例如前一时间段的交易返回率=正常交易的数目/交易总量。
在本公开的实施例中,正常交易例如是交易时长小于设定交易时长的交易,交易返回率是指正常交易的交易返回率,不包含下文所述的慢交易的交易返回率。
在本公开的实施例中,对于大于设定交易时长的交易,可以划定为慢交易,在慢交易中可以划定超时交易,例如慢交易表示交易时长大于设定交易时长的交易,超时交易是指交易时长超过额定时长的交易,其中额定时长大于设定交易时长。即慢交易不一定是超时交易,而超时交易一定是慢交易。
示例性地,例如设定交易时长为5秒,对于大于5秒的交易,则为慢交易,额定时长为30秒,对于大于30秒的交易,则为超时交易,由此,当交易时长为10秒时,则为慢交易,而不是超时交易,当交易时长为31秒时,则交易为超时交易,并且也属于慢交易。
图4示意性示出了根据本公开实施例的流量控制方法在操作S230的流程示意图。
如图4所示,操作S230包括操作S231至操作S233。
在本公开的实施例中,预先设定的交易返回率与交易通过率的对应关系表中,交易返回率具有多个数值区间,可以包括第一数值区间,第二数值区间和第三数值区间。其中,第一数值区间中的数值大于第二数值区间中的数值,第二数值区间中的数值大于第三数值区间中的数值。例如,第一数值区间为80%至100%,第二数值区间为40%至80%,第三数值区间为0%至40%。
在操作S231中,当前一时间段的交易返回率满足第一数值区间,从对应关系表中确定的流量控制策略为非流量控制策略,非流量控制策略对后一时间段接收的交易请求不进行流量控制。
在本公开的实施例中,当前一时间段的交易返回率满足第一数值区间,例如80%至100%,则表明对交易请求具有较高的交易返回率,具有较高的处理能力,此时,确定流量控制策略为非流量控制策略,即对后一时间段接收的交易请求不进行流量控制,保证交易请求处理能力的最大化。
在操作S232中,当前一时间段的交易返回率满足第二数值区间,从对应关系表中确定的流量控制策略为次要流量控制策略,次要流量控制策略对后一时间段接收的交易请求中的次要交易请求进行流量控制。
在本公开的实施例中,当前一时间段的交易返回率满足第二数值区间,例如40%至80%,则表明对交易请求处理的能力变弱,此时应当对交易请求进行限流,此时为了保证主要业务,主要针对次要交易请求进行流量控制,针对主要交易请求不进行流量控制,优先保证主要业务的处理。即采用次要流量控制策略,对后一时间段接收的交易请求中的次要交易请求进行流量控制,而对后一时间段接收的交易请求中的主要交易请求不进行流量控制。
在操作S233中,当前一时间段的交易返回率满足第三数值区间,从对应关系表中确定的流量控制策略为主要流量控制策略,主要流量控制策略对后一时间段接收的交易请求中的主要交易请求进行流量控制,拒绝后一时间段接收的交易请求中的次要交易请求,第一数值区间中的数值大于第二数值区间中的数值,第二数值区间中的数值大于第三数值区间中的数值。
在本公开的实施例中,当前一时间段的交易返回率满足第三数值区间,例如0%至40%,则表明对交易请求的处理能力很弱,此时,需要采用较大的限流措施对业务的交易请求进行流量控制。通过采用主要流量控制策略,对后一时间段接收的交易请求中主要交易请求进行流量控制,而针对交易请求中的次要交易请求,则直接拒绝,保证主要业务的部分主要交易请求。
在本公开的实施例中,操作S231至操作S233之间没有执行顺序,具体执行操作S231至操作S233之中的任意一个操作可以根据前一时间段的交易返回率来进一步确定。基于前一时间段的交易返回率,可以准确的对后一时间段的流量进行控制,从而保证业务处理的能力,同时通过设置多个流量控制策略,从而实现在业务处理能力不同的情况下,根据业务处理能力来调整交易通过率,实现自动调整,保证业务处理能力的最大化,提高效率。
图5示意性示出了根据本公开实施例的流量控制方法在操作S240的流程示意图。
如图5所示,操作S240包括操作S241至操作S243。
在操作S241中,根据确定的流量控制策略,判断后一时间段接收的交易请求的交易类型。
在本公开的实施例中,在根据前一时间段的交易返回率确定下一时间段所要执行的流量控制策略后,该流量控制策略中具有具体的交易返回率与交易通过率的对应关系。此时需要首先判断后一时间段接收到的交易请求的交易类型。
在本公开的实施例中,交易请求的交易类型包括主要交易请求和次要交易请求,其中主要交易请求对应于主要交易业务,次要交易请求主要对应于次要交易业务。
当确定了流量控制策略后,判断后一时间段接收到的交易请求的类型,例如,当确定的流量控制策略为次要流量控制策略或者主要流量控制策略后,则判断接收的交易请求为主要交易请求还是次要交易请求。又例如,当确定的流量控制策略为非流量控制策略时,从交易请求中确定出主要交易请求和次要交易请求。针对主要交易请求和次要交易请求不进行流量控制。在本实施例中,交易请求中可以仅仅包括主要交易请求和次要交易请求,在确定流量控制策略为非流量控制策略时,不对所有的交易请求进行流量控制。在可选的实施例中,交易请求中还可以包括其他的交易请求,则可以在确定出主要交易请求和次要交易请求后,针对主要交易请求和次要交易请求不进行流量控制。
在操作S242中,根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,每个交易请求的交易类型与流量控制策略中需要进行流量控制的交易类型相同。
在本公开的实施例中,在确定了流量控制策略后,可以根据确定的流量控制策略进一步确定与交易返回率相对应的交易通过率。生成与每个交易请求相关联的随机数,在本公开的实施例中,只针对与流量控制策略中需要进行流量控制的交易请求生成随机数。例如确定的流量控制策略为次要流量控制策略,则对后一时间段的次要交易请求进行流量控制。此时针对后一时间段接收的每一个次要交易请求生成随机数,该随机数用于决定该次要交易请求是否可以通过。又例如,确定的流量控制策略为主要流量控制策略,则对后一时间段的主要交易请求进行流量控制,而针对后一时间段的次要交易请求,则直接拒绝。此时,针对后一时间段接收的每一个主要交易请求生成随机数,该随机数用于决定该主要交易请求是否可以通过。
根据本公开的实施例,通过生成与每个交易请求相关联的随机数,用于决定该交易请求是否可以通过,相比于批量控制交易请求的交易通过率的方式,生成随机数可以随机确定每个交易请求是否通过,可以解决批量控制交易请求无法有效解决业务系统处理能力崩溃的问题。此外,通过设置随机数的方式,可以实现即使在交易请求处理能力较低的情况下可以实现自动恢复至处理能力较高的状态。
在操作S243中,根据确定的流量控制策略中的交易通过率与随机数的比较结果,对与随机数相关联的交易请求进行随机控制通过,使后一时间段通过的交易请求的通过率满足确定的流量控制策略中的交易通过率。
在本公开的实施例中,每个需要进行流量控制的交易请求具有相关联的随机数,通过比较确定的流量控制策略中的交易通过率与随机数的大小,从而对交易请求进行随机控制通过。
例如,确定的流量控制策略为次要流量控制策略,并且该次要流量控制策略对应的具体的交易返回率为70%,交易通过率为90%,即前一时间段确定的交易返回率为70%,由此确定的后一时间段的交易通过率为90%,在后一时间段针对所有的次要交易请求进行流量控制,在确定出所有的次要交易请求后,对与流量控制策略中需要进行流量控制的交易类型具有相同交易类型的交易请求生成0-100的随机数,即对每一个次要交易请求生成与之关联的随机数,例如,第一个次要交易请求生成的随机数为45,第二个次要交易请求生成的随机数为92,第三个次要交易请求的随机数为80等等。例如,确定的流量控制策略中的交易通过率为90%,则比较交易通过率90与随机数的大小,若随机数大于90则交易请求不可以通过,若随机数小于90则交易请求可以通过,例如第一次要交易请求和第三次要交易请求可以通过,第二次要交易请求不通过。通过采用随机数的方式,使后一时间段通过的交易请求的通过率满足确定的流量控制策略中的交易通过率,即在第二时间段内通过的次要交易请求的通过率为90%,或者约等于90%。
根据本公开的实施例,通过采用随机控制通过的方式进行流量控制,保证在进行流量控制时的稳定性,防止因出现大幅度限流导致的系统崩溃且无法自行恢复的问题,采用随机控制通过交易请求的方式,可以实现流量控制状态的自行恢复,无需人工介入,提升流量控制的效率。
图6示意性示出了根据本公开实施例的流量控制方法在操作S300的流程示意图。
在本公开的实施例中,在根据确定的流量控制策略,对后一时间段接收的交易请求进行随机控制通过以实现流量控制之后,还包括操作S300,在操作S300中,根据在后一时间段进行流量控制后的交易请求的执行结果,确定后一时间段的交易返回率,后一时间段的交易返回率用于确定下一个流量控制周期的前一时间段的流量控制策略。
后一时间段进行流量控制后的交易请求被发送至业务服务器进行执行或者处理,并根据处理结果返回交易请求的执行结果。根据执行结果中的开始时间、返回时间、交易时长、正常交易数目、交易总量等可以确定出后一时间段的交易返回率。该交易返回率可以实时反映在后一时间段针对交易请求的处理能力,例如,当交易请求的返回率较高,如超过90%则表明针对交易请求处理能力较高,此时,可以在下一流量控制周期中的前一时间段确定限流较小的流量控制策略,当交易请求的返回率较低,如低于40%,则表明针对交易请求的处理能力较弱,此时,可以在下一流量控制周期中的前一时间段确定限流较大的流量控制策略。
示例性地,后一时间段的交易返回率用于确定下一个流量控制周期的前一时间段的流量控制策略,当后一时间段的业务服务器从故障状态中恢复,则后一时间段的交易返回率升高,则在下一个流量控制周期中的前一时间段确定的流量控制策略将选择限制较小的流量控制策略,直至流量控制策略恢复至非流量控制策略,即对交易请求不在进行流量控制。
根据本公开的实施例,通过后一时间段的交易返回率确定下一个流量控制周期的前一时间段的流量控制策略,可以实现针对交易请求处理能力的不同,对流量进行实时调节,保证交易请求处理能力的最大化,提高处理效率,同时可以实现业务服务器可以从故障中自行恢复,无需人工干预。
图7示意性示出了根据本公开实施例的流量控制方法在操作S400的流程示意图。
在本公开的实施例中,如上文所述,可以根据交易请求中的慢交易确定慢交易返回率,本公开的流量控制方法还包括:根据在前一时间段进行流量控制后的交易请求的执行结果,确定前一时间段的慢交易返回率,根据慢交易返回率生成预警信号。
在本公开的实施例中,对应关系表中还包括慢交易的慢交易返回率,其中,慢交易返回率例如可以是指慢交易的总量中,已经返回的慢交易所占交易总量的比率。根据确定的慢交易返回率,可以从流量控制策略中确定出具体的后一时间段的流量控制策略中的具体参数,生成预警信号,该预警信号可以向用户进行提示可能采用的流量控制策略,用户可以根据实际情况进行提前应急等操作,当用户根据实际情况进行提前应急等处理后,若业务服务器恢复正常,则将不采用预警信号中提示的流量控制策略,若业务服务器未恢复正常,则将正常采用预警信号中提示的流量控制策略。
在本公开的实施例中,次要流量控制策略包括多个次要流量控制子策略,次要流量控制策略具有次要交易通过率数值区间,每个次要流量控制子策略对应具有不同的次要交易通过率数值子区间,多个次要流量控制子策略的多个次要交易通过率数值子区间构成次要交易通过率数值区间。
示例性地,次要流量控制策略可以是40%至80%的交易返回率区间以及交易通过率从20%至60%的区间,每个次要流量控制子策略的交易通过率数值子区间不同,例如,第一次要流量控制子策略的交易通过率数值子区间为90%(或者90%至95%的区间),第二次要流量控制子策略的交易通过率数值子区间为80%(或者80%至85%的区间)等等,依次类推,多个次要流量控制子策略的多个次要交易通过率数值子区间构成次要交易通过率数值区间,即多个不同的交易通过率数值子区间最终组成的区间为交易通过率数值区间,例如20%至60%的区间。在其他可选地实施例中,次要交易通过率数值区间和次要交易通过率数值子区间可以根据实际的需要进行调整。
在本公开的实施例中,主要流量控制策略包括多个主要流量控制子策略,主要流量控制策略具有主要交易通过率数值区间,每个主要流量控制子策略对应具有不同的主要交易通过率数值子区间,多个主要流量控制子策略的多个主要交易通过率数值子区间构成主要交易通过率数值区间。
如上文所述,多个主要交易通过率数值子区间构成主要交易通过率数值区间,例如主要交易通过率数值子区间分别是0%至20%,20%至40%,40%至60%,主要交易通过率数值区间是0%至60%。在其他可选地实施例中,主要交易通过率数值区间和主要交易通过率数值子区间可以根据实际的需要进行调整。
在本公开的实施例中,前一时间段和后一时间段的时间长度可以根据实际的需要进行调整设置。前一时间段和后一时间段构成一个流量控制周期,当业务服务器出现故障,导致业务处理能力下降时,通过本公开的流量控制方法,可以实现对流量的控制,保证在业务服务器的最大处理能力下对交易请求进行处理。当业务服务器的故障恢复时,通过交易返回率来判断交易服务器的正常状态,当交易返回率较高时,通过从对应关系表中确定出流量控制策略,实现全部交易的正常运行,实现流量控制的自动恢复。
图8示意性示出了根据本公开实施例的流量控制装置的框图。
如图8所示,流量控制装置500包括设定模块510、第一确定模块520、第二确定模块530、流量控制模块540。
设定模块510,配置为预先设定交易返回率与交易通过率的对应关系表,所述对应关系表中的每一个对应关系具有关联的流量控制策略,所述流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略。在一实施例中,设定模块510可以用于执行前文描述的操作S210,在此不再赘述。
第一确定模块520配置为根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率。第一确定模块520可以用于执行前文描述的操作S230,在此不再赘述。
第二确定模块530配置为根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略。第二确定模块530可以用于执行前文描述的操作S230,在此不再赘述。
流量控制模块540配置为根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,所述后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,所述前一时间段和所述后一时间段构成一个流量控制周期。流量控制模块540可以用于执行前文描述的操作S240,在此不再赘述。
在本公开的一些示例性实施例中,所述第一确定模块520包括第一确定单元,第一确定单元配置为:统计前一时间段进行流量处理后的交易请求的数目,生成前一时间段的交易总量;根据每一个交易请求的开始时间和返回时间,确定每一个交易请求的交易时长;根据所述交易时长确定正常交易,所述正常交易的交易时长小于设定交易时长;根据所述正常交易的数目和所述交易总量,确定前一时间段的交易返回率。
在本公开的一些示例性实施例中,所述交易请求的交易类型包括主要交易请求和次要交易请求,第二确定模块530包括第二确定单元,第二确定单元配置为:当所述前一时间段的交易返回率满足第一数值区间,从所述对应关系表中确定的流量控制策略为非流量控制策略,所述非流量控制策略对所述后一时间段接收的交易请求不进行流量控制;当所述前一时间段的交易返回率满足第二数值区间,从所述对应关系表中确定的流量控制策略为次要流量控制策略,所述次要流量控制策略对所述后一时间段接收的交易请求中的次要交易请求进行流量控制;当所述前一时间段的交易返回率满足第三数值区间,从所述对应关系表中确定的流量控制策略为主要流量控制策略,所述主要流量控制策略对所述后一时间段接收的交易请求中的主要交易请求进行流量控制,拒绝所述后一时间段接收的交易请求中的次要交易请求,所述第一数值区间中的数值大于所述第二数值区间中的数值,所述第二数值区间中的数值大于所述第三数值区间中的数值。
在本公开的一些示例性实施例中,流量控制模块540包括流量控制单元,流量控制单元配置为:根据确定的流量控制策略,判断所述后一时间段接收的交易请求的交易类型;根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,所述每个交易请求的交易类型与所述流量控制策略中需要进行流量控制的交易类型相同;根据确定的流量控制策略中的交易通过率与所述随机数的比较结果,对与所述随机数相关联的交易请求进行随机控制通过,使所述后一时间段通过的所述交易请求的通过率满足确定的流量控制策略中的交易通过率。
在本公开的一些示例性实施例中,流量控制装置还包括第三确定模块,第三确定模块配置为:在根据确定的所述流量控制策略,对后一时间段接收的交易请求进行随机控制通过以实现流量控制之后,根据在后一时间段进行流量控制后的交易请求的执行结果,确定后一时间段的交易返回率,所述后一时间段的交易返回率用于确定下一个所述流量控制周期的前一时间段的流量控制策略。
在本公开的一些示例性实施例中,流量控制装置还包括生成模块,所述生成模块配置为:根据在前一时间段进行流量控制后的交易请求的执行结果,确定前一时间段的慢交易返回率,根据慢交易返回率生成预警信号。
根据本公开的实施例,设定模块510、第一确定模块520、第二确定模块530、流量控制模块540中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,设定模块510、第一确定模块520、第二确定模块530、流量控制模块540中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,设定模块510、第一确定模块520、第二确定模块530、流量控制模块540中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图9示意性示出了根据本公开实施例的用于实现流量控制方法的电子设备的框图。图9示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,根据本公开实施例的电子设备600包括处理器601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 603中,存储有电子设备600操作所需的各种程序和数据。处理器601、ROM602以及RAM 603通过总线604彼此相连。处理器601通过执行ROM 602和/或RAM 603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 602和RAM 603以外的一个或多个存储器中。处理器601也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备600还可以包括输入/输出(I/O)接口605,输入/输出(I/O)接口605也连接至总线604。电子设备600还可以包括连接至I/O接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的流量控制方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 602和/或RAM 603和/或ROM 602和RAM 603以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的流量控制方法。
在该计算机程序被处理器601执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分609被下载和安装,和/或从可拆卸介质611被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (10)
1.一种流量控制方法,包括:
预先设定交易返回率与交易通过率的对应关系表,所述对应关系表中的每一个对应关系具有关联的流量控制策略,所述流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;
根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率;
根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略;
根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,所述后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,所述前一时间段和所述后一时间段构成一个流量控制周期;
所述根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,包括:
根据确定的流量控制策略,判断所述后一时间段接收的交易请求的交易类型;
根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,所述每个交易请求的交易类型与所述流量控制策略中需要进行流量控制的交易类型相同;
根据确定的流量控制策略中的交易通过率与所述随机数的比较结果,对与所述随机数相关联的交易请求进行随机控制通过,使所述后一时间段通过的所述交易请求的通过率满足确定的流量控制策略中的交易通过率。
2.根据权利要求1所述的方法,其中,
所述根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率,包括:
统计前一时间段进行流量处理后的交易请求的数目,生成前一时间段的交易总量;
根据每一个交易请求的开始时间和返回时间,确定每一个交易请求的交易时长;
根据所述交易时长确定正常交易,所述正常交易的交易时长小于设定交易时长;
根据所述正常交易的数目和所述交易总量,确定前一时间段的交易返回率。
3.根据权利要求1所述的方法,其中,
所述交易请求的交易类型包括主要交易请求和次要交易请求,
所述根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略,包括:
当所述前一时间段的交易返回率满足第一数值区间,从所述对应关系表中确定的流量控制策略为非流量控制策略,所述非流量控制策略对所述后一时间段接收的交易请求不进行流量控制;
当所述前一时间段的交易返回率满足第二数值区间,从所述对应关系表中确定的流量控制策略为次要流量控制策略,所述次要流量控制策略对所述后一时间段接收的交易请求中的次要交易请求进行流量控制;
当所述前一时间段的交易返回率满足第三数值区间,从所述对应关系表中确定的流量控制策略为主要流量控制策略,所述主要流量控制策略对所述后一时间段接收的交易请求中的主要交易请求进行流量控制,拒绝所述后一时间段接收的交易请求中的次要交易请求,
所述第一数值区间中的数值大于所述第二数值区间中的数值,所述第二数值区间中的数值大于所述第三数值区间中的数值。
4.根据权利要求3所述的方法,其中,
所述次要流量控制策略包括多个次要流量控制子策略,所述次要流量控制策略具有次要交易通过率数值区间,每个次要流量控制子策略对应具有不同的次要交易通过率数值子区间,
所述多个次要流量控制子策略的多个次要交易通过率数值子区间构成所述次要交易通过率数值区间。
5.根据权利要求3所述的方法,其中,
所述主要流量控制策略包括多个主要流量控制子策略,所述主要流量控制策略具有主要交易通过率数值区间,每个主要流量控制子策略对应具有不同的主要交易通过率数值子区间,
所述多个主要流量控制子策略的多个主要交易通过率数值子区间构成所述主要交易通过率数值区间。
6.根据权利要求1至5中任一项所述的方法,其中,还包括:
在根据确定的所述流量控制策略,对后一时间段接收的交易请求进行随机控制通过以实现流量控制之后,
根据在后一时间段进行流量控制后的交易请求的执行结果,确定后一时间段的交易返回率,所述后一时间段的交易返回率用于确定下一个所述流量控制周期的前一时间段的流量控制策略。
7.根据权利要求1至5中任一项所述的方法,其中,还包括:
根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的慢交易返回率,根据所述慢交易返回率生成预警信号。
8.一种流量控制装置,包括:
设定模块,配置为预先设定交易返回率与交易通过率的对应关系表,所述对应关系表中的每一个对应关系具有关联的流量控制策略,所述流量控制策略包括非流量控制策略、次要流量控制策略以及主要流量控制策略;
第一确定模块,配置为根据在前一时间段进行流量控制后的交易请求的执行结果,确定所述前一时间段的交易返回率;
第二确定模块,配置为根据所述前一时间段的交易返回率,从所述对应关系表中确定流量控制策略;
流量控制模块,配置为根据确定的流量控制策略,对后一时间段接收的交易请求采用随机控制通过的方式进行流量控制,所述后一时间段通过的交易请求满足确定的流量控制策略中的交易通过率,所述前一时间段和所述后一时间段构成一个流量控制周期;流量控制模块包括流量控制单元,流量控制单元配置为:根据确定的流量控制策略,判断所述后一时间段接收的交易请求的交易类型;根据确定的流量控制策略中的交易通过率,生成与每个交易请求相关联的随机数,所述每个交易请求的交易类型与所述流量控制策略中需要进行流量控制的交易类型相同;根据确定的流量控制策略中的交易通过率与所述随机数的比较结果,对与所述随机数相关联的交易请求进行随机控制通过,使所述后一时间段通过的所述交易请求的通过率满足确定的流量控制策略中的交易通过率。
9.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现根据权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时,实现根据权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977867.7A CN115361339B (zh) | 2022-08-15 | 2022-08-15 | 流量控制方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210977867.7A CN115361339B (zh) | 2022-08-15 | 2022-08-15 | 流量控制方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115361339A CN115361339A (zh) | 2022-11-18 |
CN115361339B true CN115361339B (zh) | 2024-03-01 |
Family
ID=84033804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210977867.7A Active CN115361339B (zh) | 2022-08-15 | 2022-08-15 | 流量控制方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115361339B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116192752B (zh) * | 2023-02-27 | 2024-07-16 | 中国工商银行股份有限公司 | 业务流量控制方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105631743A (zh) * | 2016-03-14 | 2016-06-01 | 中国银行股份有限公司 | 一种atm交易实时流量控制方法及系统 |
CN107707488A (zh) * | 2017-10-25 | 2018-02-16 | 北京数码视讯支付技术有限公司 | 支付联机交易流量控制方法、限流服务端及客户端 |
CN108712350A (zh) * | 2018-06-05 | 2018-10-26 | 中国农业银行股份有限公司 | 基于自定义规则可实时自动调控的流量控制方法及装置 |
CN111131058A (zh) * | 2019-11-25 | 2020-05-08 | 泰康保险集团股份有限公司 | 访问量控制方法和装置 |
CN114880156A (zh) * | 2022-06-12 | 2022-08-09 | 北京云思智学科技有限公司 | 任务流量处理方法、装置及电子设备 |
-
2022
- 2022-08-15 CN CN202210977867.7A patent/CN115361339B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105631743A (zh) * | 2016-03-14 | 2016-06-01 | 中国银行股份有限公司 | 一种atm交易实时流量控制方法及系统 |
CN107707488A (zh) * | 2017-10-25 | 2018-02-16 | 北京数码视讯支付技术有限公司 | 支付联机交易流量控制方法、限流服务端及客户端 |
CN108712350A (zh) * | 2018-06-05 | 2018-10-26 | 中国农业银行股份有限公司 | 基于自定义规则可实时自动调控的流量控制方法及装置 |
CN111131058A (zh) * | 2019-11-25 | 2020-05-08 | 泰康保险集团股份有限公司 | 访问量控制方法和装置 |
CN114880156A (zh) * | 2022-06-12 | 2022-08-09 | 北京云思智学科技有限公司 | 任务流量处理方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115361339A (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180276628A1 (en) | Systems and methods for monitoring and transferring financial capital | |
CN109144700B (zh) | 超时时长的确定方法、装置、服务器和数据处理方法 | |
CN115361339B (zh) | 流量控制方法、装置、电子设备和存储介质 | |
CN108416665B (zh) | 数据交互方法、装置、计算机设备和存储介质 | |
CN110808914A (zh) | 一种访问请求处理方法、装置及电子设备 | |
CN106817424A (zh) | 用于控制访问流量的方法及系统 | |
CN109120548B (zh) | 一种流量控制方法及装置 | |
US10708384B2 (en) | Data processing method and system | |
US11887186B2 (en) | Intraday resource management system | |
US11614968B2 (en) | Processing future-dated resource reservation requests | |
US8856376B1 (en) | Stabilization tool for a high-capacity network infrastructure | |
CN114331446B (zh) | 区块链的链外服务实现方法、装置、设备和介质 | |
CN116095005A (zh) | 流量管理方法、装置、设备、介质和程序产品 | |
US11388063B2 (en) | Intraday resource management system | |
US20220101321A1 (en) | Systems and methods for processing resource transfer requests | |
US20230106705A1 (en) | System and method for real-time processing of resource transfers | |
CN115357363A (zh) | 限流方法、装置、任务响应系统、电子设备及存储介质 | |
CN106033304A (zh) | 数据交互方法及装置 | |
CN116629874A (zh) | 动账监控方法、装置、设备、介质和程序产品 | |
CN114844810B (zh) | 心跳数据处理方法、装置、设备及介质 | |
US20230418676A1 (en) | Priority-based load shedding for computing systems | |
CN118331690A (zh) | 事务一致性能力提升方法、装置、设备、介质和程序产品 | |
CN116308714A (zh) | 特殊用户评估方法、装置、电子设备、介质和程序产品 | |
CN116880964A (zh) | 中间件集群配置方法、装置、电子设备和存储介质 | |
CN117056165A (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 |