CN114465959A - 接口动态流量控制方法、装置、计算机设备和存储介质 - Google Patents
接口动态流量控制方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114465959A CN114465959A CN202111601181.XA CN202111601181A CN114465959A CN 114465959 A CN114465959 A CN 114465959A CN 202111601181 A CN202111601181 A CN 202111601181A CN 114465959 A CN114465959 A CN 114465959A
- Authority
- CN
- China
- Prior art keywords
- target
- request
- service requests
- target service
- interface
- 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 53
- 230000004044 response Effects 0.000 claims abstract description 207
- 238000004590 computer program Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 description 18
- 230000001419 dependent effect Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 230000036541 health Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 238000013480 data collection Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
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
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- 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
-
- 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
- H04L47/29—Flow control; Congestion control using a combination of thresholds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种接口动态流量控制方法、装置、计算机设备和存储介质,所述方法包括:获取数据系统的目标接口的预设类别信息对应的流控规则;获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中所述目标业务请求的连接数量。上述方法能够基于实时业务请求量动态调整接口的流控阈值,从而实时维持数据系统的稳定性保护。
Description
技术领域
本申请涉及流量控制技术领域,特别是涉及一种接口动态流量控制方法、装置、计算机设备和存储介质。
背景技术
当前市面上的流量削峰方案,如微服务的网关流控、Soul的高性能响应式网关等,都是通过设置一个固定的流控阈值或者通过人力去调整流控阈值的方式来实现流量削峰,这样会带来如下几个问题:
1、固定的流控阀值针对不同的突发场景未必是最优值;
2、人力调整无法做到及时有效的响应。
发明内容
基于此,有必要针对上述技术问题,提供一种接口动态流量控制方法、装置、计算机设备和存储介质,能够基于实时业务请求量动态调整接口的流控阈值,从而实时维持数据系统的稳定性保护。
一种接口动态流量控制方法,包括:获取数据系统的目标接口的预设类别信息对应的流控规则;获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中所述目标业务请求的连接数量。
在其中一个实施例中,目标接口包括数据系统的网关层接口,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:从流控规则中获取与平均响应时间匹配的第一阈值,将第一阈值作为目标业务请求数量的阈值。
在其中一个实施例中,目标接口包括数据系统的应用服务器的应用层接口,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算所述各目标业务请求的请求响应时间。
在其中一个实施例中,一种接口动态流量控制方法还包括:获取应用服务器对应的数据支撑系统的状态信息,数据支撑系统用于响应应用服务器发送的多个第二业务请求;根据状态信息确定第二阈值;根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:根据流控规则和平均响应时间确定第三阈值;确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。
在其中一个实施例中,一种接口动态流量控制方法还包括:获取目标接口的预设类别信息的数据采集频率和数据采集参数;根据数据采集频率和数据采集参数从目标接口中采集多个目标业务请求的多个第三相关数据;根据多个第三相关数据计算多个目标业务请求的请求响应时间。
在其中一个实施例中,一种接口动态流量控制方法还包括:当目标接口的目标业务请求数量超过阈值时,控制目标接口接入第一数量的目标业务请求,并将第二数量的目标业务请求进行熔断处理,第一数量为阈值,第二数量为目标业务请求数量与阈值的差值。
一种接口动态流量控制装置,包括:第一获取模块,用于获取数据系统的目标接口的预设类别信息对应的流控规则;第二获取模块,用于获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;计算模块,用于根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;设置模块,用于根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一实施例方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例方法的步骤。
上述接口动态流量控制方法、装置、计算机设备和存储介质,获取数据系统的目标接口的预设类别信息对应的流控规则,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间,根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。因此,能够实时调整目标接口的目标业务请求数量的阈值,使得该阈值与目标接口的实时目标业务请求情况相匹配,从而实时维持数据系统的稳定性保护。
附图说明
图1为一个实施例中一种接口动态流量控制方法的应用环境图;
图2为一个实施例中一种接口动态流量控制方法的流程示意图;
图3为一个实施例中对网关层接口的动态流量控制的信息流框架图;
图4为一个实施例中一种接口动态流量控制方法的系统架构的框架示意图;
图5为一个实施例中一种接口动态流量控制方法的系统架构的硬件拓扑图;
图6为一个实施例中一种接口动态流量控制方法的流程操作示意图;
图7为一个实施例中一种接口动态流量控制装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的一种接口动态流量控制方法,应用于如图1所示的应用环境中。如图1所示,业务系统集群102中包含多个业务系统,各业务系统均可向数据系统104发送业务请求,以请求数据系统104返回对应的业务数据。当同一时间段多个业务系统向数据系统104发送业务请求,或一个业务系统向数据系统104发送多个业务请求时,有可能造成数据系统104的系统压力过大而引起系统故障,因此需对数据系统104的业务请求进行流量控制。具体地,数据监控平台106获取数据系统104的目标接口的预设类别信息对应的流控规则,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间,根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。因此,能够实时调整目标接口的目标业务请求数量的阈值,使得该阈值与目标接口的实时目标业务请求情况相匹配,从而实时维持数据系统的稳定性保护。
在一个实施例中,如图2所示,提供了一种接口动态流量控制方法,以该方法应用于图1中的数据监控平台106为例进行说明,包括以下步骤:
S202,获取数据系统的目标接口的预设类别信息对应的流控规则。
本实施例中,预先针对目标接口设置一个或多个流控规则。多个流控规则基于目标接口的业务请求的类别进行设置。如,业务请求的类别为某一报表的业务请求,则基于该报表设置对应的流控规则。业务请求的类别为某一用户的业务请求,则基于该用户设置对应的流控规则。其中,流控规则与目标接口的业务请求的平均响应时间相关,不同的平均响应时间对应不同的流控阈值。
流控规则包括但不限于:计数法和水桶法。计数法:不同平均响应时间对应不同的业务请求的最大连接数。即,不同平均响应时间下单个URL(uniform resource locator,统一资源定位系统)或整体URL或某个系统允许的最大连接数。水桶法:不同平均响应时间对应不同的每秒最大访问数。即,不同平均响应时间下单个URL或整体URL或某个系统允许的每秒最大访问数。
数据监控平台中配置不同预设类别信息,不同预设类别信息对应不同的流控规则。数据监控平台获取数据系统的目标接口的预设类别信息对应的流控规则。
S204,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间。
本实施例中,数据系统通过目标接口接收多种业务请求。数据监控平台对各种业务请求的流量控制不同。此处,采集预设类别信息对应的目标接口的多个目标业务请求的相关数据,根据各目标业务请求的相关数据确定各目标业务请求的请求响应时间。如,采集目标接口的报表这一类别对应的多个目标业务请求的相关数据,相关数据包括各目标业务请求的触发时间和响应时间,进而根据触发时间和响应时间确定各目标业务请求的请求响应时间。
S206,根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间。
本实施例中,获取预定时间段内目标接口的目标业务请求的平均响应时间。可以是,计算预定时间段内多个目标业务请求的请求响应时间的平均值,将该平均值作为预定时间段内目标业务请求的平均响应时间。可以是,通过滑动的时间窗口设置预定时间段,如30s或者60s的时间窗口,计算时间窗口内目标接口的目标业务请求的请求数量,计算该请求数量的目标业务请求的平均响应时间。
S208,根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。
本实施例中,流控规则中设定了不同的平均响应时间对应不同的阈值。即,规定了一组或多组的平均响应时间与阈值的关联组合关系。当确定出预定时间段内目标业务请求的平均响应时间时,可以通过该平均响应时间从流控规则中确定出对应的目标业务请求数量的阈值。通过目标业务请求数量的阈值设定目标接口的目标业务请求的连接数量最值。因此,能够控制目标接口中目标业务请求的请求量,从而实现目标接口的流量控制。
上述接口动态流量控制方法,获取数据系统的目标接口的预设类别信息对应的流控规则,获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间,根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。因此,能够实时调整目标接口的目标业务请求数量的阈值,使得该阈值与目标接口的实时目标业务请求情况相匹配,从而实时维持数据系统的稳定性保护。
在一个实施例中,目标接口包括数据系统的网关层接口,上述获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
该实施例中,当业务系统访问数据系统时,网关层接口接收来自业务系统的多个第一业务请求,网关层记录各第一业务请求的多个第一相关数据。多个第一相关数据包括第一业务请求的触发时间、第一业务请求的请求内容、第一业务请求的业务系统名称以及第一业务请求的接口地址等。此时,第一相关数据存储在网关服务器中。当网关层向应用服务器转发第一业务请求,并接收到来自应用服务器的响应数据时,网关层记录第一业务请求的响应结束时间,第一业务请求依赖的数据支撑系统的名称以及请求结果状态等。其中,多个第一相关数据还包括第一业务请求的响应结束时间,第一业务请求依赖的数据支撑系统的名称以及请求结果状态等。网关层将多个第一相关数据中包含的上述所有数据信息发送到数据监控平台的信息采集存储区。
数据监控平台从信息采集存储区中获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间,根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求。具体地,多个第一业务请求中包含多个目标业务请求,将各第一业务请求的请求类别与预设类别信息进行匹配,通过匹配结果识别出多个第一业务请求中的多个目标业务请求。进而,获取各目标业务请求的触发时间和响应结束时间,将各目标业务请求的响应结束时间与触发时间的差值作为各目标业务请求的请求响应时间。因此,可以获得网关层接口的各目标业务请求的请求响应时间,进而可以求取网关层的目标业务请求数量的阈值,从而可以控制网关层中目标业务请求的连接数量,实现网关层接口的流量控制。
在一个实施例中,上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:从流控规则中获取与平均响应时间匹配的第一阈值,将第一阈值作为目标业务请求数量的阈值。
该实施例中,目标接口为网关层接口,通过网关层接口的目标业务请求的平均响应时间设置网关层接口的流量控制的阈值。具体地,流控规则中设置有各个平均响应时间对应的阈值,从流控规则中获取与平均响应时间匹配的第一阈值,将该将第一阈值作为目标业务请求数量的阈值。因此,可得到与网关层接口的实时目标业务请求情况相匹配的阈值,通过该阈值控制网关层接口的目标业务请求的连接数量,能够维持网关层的稳定性。
例如,基于上述实施例对网关层接口的动态流量控制方法,以下给出一具体实施说明,具体信息流参见图3所示:
1、系统运营在规则模块中初始化采集规则、流控规则和熔断规则,后续规则可根据规则片动态插入。
2、客户端发起业务请求。
3、网关层采集请求状态、请求起始时间和结束时间等。
4、对应的业务服务器采集请求核心参数,依赖接口的响应时间和状态。
5、落地外部服务推送的相关数据。
6、采集数据落kafka队列,通过spark、flink等方式对采集数据进行计算,获取能影响流控熔断规则的结果数据,并保存到druid、es数据存储。
7、根据计算结果,自动匹配层级上限,动态修改规则对应的阀值。
8、网关依赖最新的降级熔断规则,对请求进行削峰处理。
因此,可实现根据网关层的实时压力控制数据系统动态变更流控熔断阀值,达到数据系统的稳定性保护。
在一个实施例中,目标接口包括数据系统的应用服务器的应用层接口,上述获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
该实施例中,当业务系统访问数据系统时,网关层接口接收来自业务系统的多个第一业务请求,并将第一业务请求转发到应用服务器。应用服务器基于第一业务请求通过应用层接口向数据支撑系统发送第二业务请求。应用服务器记录第二业务请求的请求类别以及第二业务请求的触发时间。当接收到数据支撑系统返回的第二业务请求的数据时,记录第二业务请求的响应结束时间。应用服务器将包含第二业务请求的请求类别以及第二业务请求的触发时间、第二业务请求的响应结束时间的多个第二相关数据发送到数据监控平台的信息采集存储区。
具体地,应用服务器收到第一业务请求时,记录相应的请求用户、请求主体信息、是否存在依赖数据支撑系统、依赖的数据支撑系统名称、存放数据支撑系统请求的队列时间、数据支撑系统请求的执行时间。根据记录的信息向数据支撑系统发送第二业务请求。当数据支撑系统将数据返回给应用服务器时,应用服务器记录数据支撑系统请求的结束时间以及请求返回状态。此时将所有记录信息推送到数据监控平台的信息采集存储区。其中,第二相关数据包括上述相应的请求用户、请求主体信息、是否存在依赖数据支撑系统、依赖的数据支撑系统名称、存放数据支撑系统请求的队列时间、数据支撑系统请求的执行时间以及数据支撑系统请求的结束时间以及请求返回状态。第二业务请求的请求类别可以根据上述请求用户或请求主体信息确定,第二业务请求的触发时间根据上述数据支撑系统请求的执行时间确定,第二业务请求的响应结束时间根据上述数据支撑系统请求的结束时间确定。
数据监控平台从信息采集存储区中获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间,根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求。具体地,多个第二业务请求中包含多个目标业务请求,将各第二业务请求的请求类别与预设类别信息进行匹配,通过匹配结果识别出多个第二业务请求中的多个目标业务请求。进而,获取各目标业务请求的触发时间和响应结束时间,将各目标业务请求的响应结束时间与触发时间的差值作为各目标业务请求的请求响应时间。因此,可以获得应用层接口的各目标业务请求的请求响应时间,进而可以求取应用层的目标业务请求数量的阈值,从而可以控制应用层中目标业务请求的连接数量,实现应用层接口的流量控制。
在一个实施例中,上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值的步骤之前,还包括:获取应用服务器对应的数据支撑系统的状态信息,数据支撑系统用于响应应用服务器发送的多个第二业务请求;根据状态信息确定第二阈值。上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:根据流控规则和平均响应时间确定第三阈值;确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。
该实施例中,数据支撑系统用于响应应用服务器发送的多个第二业务请求。数据支撑系统推送当前状态信息到数据监控平台的信息采集存储区。数据支撑系统的当前状态信息包括亚健康状态、健康状态和不可用状态。不同状态对应不同的阈值,如亚健康状态对应的阈值为200、健康状态对应的阈值为500、不可用状态对应的阈值为0。数据监控平台从信息采集存储区中获取应用服务器对应的数据支撑系统的状态信息,根据状态信息确定第二阈值。如状态信息为亚健康状态,亚健康状态对应的第二阈值为200。此外,根据流控规则和平均响应时间确定第三阈值,此处确定的方式如上述实施例中确定第一阈值的方式相同,此处不再详述。进而,确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。因此,可以结合应用层接中目标业务请求的请求情况以及应用层对应的数据支撑系统的状态确定应用层的目标业务请求数量的阈值,从而可以控制应用层中目标业务请求的连接数量,实现应用层接口的流量控制。
在一个实施例中,上述获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间的步骤之前,还包括:获取目标接口的预设类别信息的数据采集频率和数据采集参数;根据数据采集频率和数据采集参数从目标接口中采集多个目标业务请求的多个第三相关数据;根据多个第三相关数据计算多个目标业务请求的请求响应时间。
该实施例中,设置数据采集频率和数据采集参数。数据监控平台基于数据采集频率对目标接口进行多个目标业务请求的多个第三相关数据的数据采集。数据监控平台基于数据采集参数确定目标业务请求的数据采集对象,即确定出目标业务请求的多个第三相关数据。进而,根据多个第三相关数据计算多个目标业务请求的请求响应时间。
例如,数据采集参数包括链接URL、访问系统、业务请求的类别、请求对象等,通过数据采集参数可以识别出网关层接口和/或应用层接口,并识别出网关层接口和/或应用层接口的业务请求的数据采集对象。
目标接口包括网关层接口,网关层接口的多个目标业务请求的多个第三相关数据的采集方式为:当业务系统访问数据系统时,网关层将当前访问的业务系统名称、请求的接口地址、请求的触发时间、请求内容等寄到到网关服务器中,当网关层对应的应用服务器将最终数据返回给网关层时,网关层再次记录当前请求的请求结束时间、依赖系统名称、请求结果状态等。网关层记录的所有信息作为网关层接口的多个目标业务请求的多个第三相关数据,推送到数据监控平台的信息采集存储区。
例如,目标接口包括应用层接口,应用层接口的多个目标业务请求的多个第三相关数据的采集方式为:应用服务器收到网关层转发的请求时,记录相应的请求用户、请求主体信息、是否存在依赖数据支撑系统、依赖的数据支撑系统名称、存放数据支撑系统请求的队列时间、数据支撑系统请求的执行时间;当数据支撑系统将数据返回给应用服务器时,应用服务器记录数据支撑系统请求的结束时间以及请求返回状态。应用层记录的所有信息作为应用层接口的多个目标业务请求的多个第三相关数据,推送到数据监控平台的信息采集存储区。此外,数据支撑系统推送本系统的当前状态信息到数据监控平台的信息采集存储区。
在一个实施例中,上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量的步骤之后,还包括:当目标接口的目标业务请求数量超过阈值时,控制目标接口接入第一数量的目标业务请求,并将第二数量的目标业务请求进行熔断处理,第一数量为阈值,第二数量为目标业务请求数量与阈值的差值。
该实施例中,通过阈值控制目标接口中目标业务请求的连接数量的方式为:若目标业务请求的请求数量大于设定的阈值时,将第一数量的目标业务请求接入目标接口,将其余的第二数量的目标业务请求进行熔断处理。第一数量为阈值,第二数量为超出阈值部分的目标业务请求的请求数量。因此,可以实现目标接口的动态流量控制,保护数据系统的稳定性。
例如,设定熔断规则。熔断规则包括但不限于:不同业务请求的连接数量或不同平均响应时间下报表系统的分层熔断,当上下游系统压力达到某种程度时,即目标业务请求的连接数量超过设定的阈值时,系统或功能分层熔断。
针对上述一种接口动态流量控制方法,以下给出一具体实施场景,以说明基于上述一种接口动态流量控制方法对网关层接口以及应用层接口进行流量削峰:
如图4所示,以数据请求为例的场景:
1、业务系统A、业务系统B访问数据系统接口。
2、访问优先走到网关服务器,网关连接数+1,然后由网关服务器转发给应用服务器。
3、应用服务器处理数据时,调用数据支撑系统E、数据支撑系统F以获取相关数据支撑信息。
4、数据支撑系统E、数据支撑系统F将数据返回给应用服务器。
5、应用服务器收到数据支撑数据后,进行数据处理,然后将最终数据返回给网关,通过网关返回给业务系统A、业务系统B,网关连接数-1。
以上场景包括信息采集和实时数据计算:
信息采集包括:
采集①:当业务系统访问数据系统时,网关层记录当前访问的业务系统名称,请求的接口地址,请求的触发时间,请求内容等(注:此时记录的信息尚在网关服务器中);当应用服务器将最终数据返回给网关时,网关再次记录当前请求的请求结束时间,依赖系统名称,请求结果状态等。此时将这些记录信息推送到信息采集存储中。
采集②:应用服务器收到请求时,记录相应的请求用户,请求主体信息(按报表请求的报表信息,按指标请求的指标信息…),是否存在依赖支撑系统,依赖的支撑系统名称,存放支撑系统请求的队列时间,支撑系统请求的执行时间;当支撑系统将数据返回给应用服务器是,应用服务器记录支撑系统请求的结束时间,请求返回状态。此时将这些记录信息推送到信息采集存储中。
采集③:由支撑系统推送当前健康信息到信息采集存储中。
实时数据计算:
计算数据来源为信息采集得到的数据。
1、实时计算每次采集下的响应时间,比如采集①中的单个接口整体请求响应时间(请求结束时间-请求触发时间),采集②中的请求在支撑系统中排队时间(支撑系统请求的执行时间-存放支撑系统请求的队列时间)、支撑系统执行的响应时间(支撑系统请求的结束时间-支撑系统请求的执行时间)。
2、按时间窗口(30s或者60s)计算当前窗口中数据系统整体的请求数量,单个URL的平均执行响应时间,各支撑系统的平均响应时间,支撑系统的健康恢复情况(如果当前窗口下没有收到支撑系统的反馈,则使用前一状态,如果长时间都没有收到反馈,则默认支撑系统服务不可用)。
3、根据计算结果以及运维人员配置的信息,进行整体/各请求接口并发量的一个调整。
其中,上述场景中的运维配置规则案例如下:
1、默认数据请求接口网关层层并发量为500,关联各支撑系统的应用层接口并发量为400。
2、当数据系统接口平均响应时间>5s时,网关层并发量=50;平均响应时间>1s时,网关层并发量=200;平均响应时间<1s时,网关层并发量=500;
3、当支撑系统执行响应时间或等待时间>5s,其系统对应的应用层接口并发量=50;支撑系统执行响应时间或等待时间>1s时,其系统对应的应用层接口并发量=200;支撑系统执行响应时间或等待时间<1s时,其系统对应的应用层接口并发量=500;
4、支撑系统健康不可用时,其系统对应的应用层接口并发量=0;支撑系统亚健康,其系统对应的应用层接口并发量=200;支撑系统健康,其系统对应的应用层接口并发量=500;
上述场景中,根据数据计算结果,实时动态调整并发量。例如,数据支撑系统E、F都健康,各平均响应时间都小于1s。业务系统并发请求大于500,网关层只处理前500条请求,其他请求熔断提示系统繁忙,请稍后再试;后续请求视网关连接数而定。
当数据支撑系统E发出亚监控状态或者,或者执行响应时间或等待时间>1s时,涉及E系统的应用层接口并发量从500下降至200;当业务系统500并发请求过来时,如果这批请求不涉及任何数据支撑系统,请求正常。如果这批请求不涉及E系统,请求正常;如果这批请求涉及E系统的量小于200,请求正常;如果这批请求涉及E系统的量大于200,则网关层不会拦截,但是应用层进行拦截,涉及到E系统的只处理200个,其他熔断。
如果支撑系统F连续一段时间无状态推送,则涉及F系统的应用层接口并发量从500下降至0;应用层不接受任何涉及F系统的请求。
针对上述实施场景,以公司报表系统为例进行说明。其中,报表系统的上游为指标服务系统,系统架构参见图5所示,具体操作流程参见图6所示:
第一步:报表系统运营初始化规则,一分钟内:
1、若报表平均响应时间<100ms,控制业务请求的最大连接数为600;
2、若报表平均响应时间<500ms,控制业务请求的最大连接数为400;
3、若报表平均响应时间<1s,控制业务请求的最大连接数为200;
4、若报表平均响应时间>=1s,控制业务请求的最大连接数100,同时针对部分报表开启熔断;
第二步:对业务请求进行数据采集,并按一分钟的频率对采集的数据进行计算,计算当前一分钟时间内的平均响应时间以及平均响应时间倒序下的报表TOPN。
结果1:当前时间段内业务请求的平均响应时间为50ms,最大连接数保持不变。
结果2:当前时间段内业务请求的平均响应时间为200ms/800ms,动态调整最大连接数,从600降至400/200。
结果3:当前时间段内业务请求的平平均响应时间为1100ms,动态调整最大连接数,从600降至100,同时对报表TOPN进行熔断处理。
上述一种接口动态流量控制方法,解决了以下现有存在的技术问题:
1、现有技术中流量削峰无法做到根据系统服务压力进行自主最优调配,本申请根据系统压力自主最优调配分为两种:
一是通过对历史数据的分析,获取系统压力与削峰阀值的最优比,动态调整初始化规则。
二是根据采集数据分析计算当前时间段的系统压力,如连接数,平均响应时间,然后根据规则分层动态调整流量削峰阀值。
2、现有技术中流量削峰无法做到根据上下游依赖系统压力自主最优调配:上下游依赖系统压力数据来至两种场景,第一个是计算依赖系统的交互接口情况,还有一个就是对接依赖系统,有依赖系统推送告知。本申请中,通过对交互接口响应情况和推送数据(依赖系统降级等)来计算分析,动态调整涉及到的接口流量削峰阀值。
应该理解的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,附图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本申请还提供一种接口动态流量控制装置,如图7所示,该装置包括第一获取模块702、第二获取模块704、计算模块706和设置模块708。第一获取模块702,用于获取数据系统的目标接口的预设类别信息对应的流控规则;第二获取模块704,用于获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;计算模块706,用于根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;设置模块708,用于根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。
在其中一个实施例中,上述目标接口包括数据系统的网关层接口,上述获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:从流控规则中获取与平均响应时间匹配的第一阈值,将第一阈值作为目标业务请求数量的阈值。
在其中一个实施例中,目标接口包括数据系统的应用服务器的应用层接口,上述获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间,包括:获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,一种接口动态流量控制装置还包括确定模块,确定模块用于获取应用服务器对应的数据支撑系统的状态信息,数据支撑系统用于响应应用服务器发送的多个第二业务请求;根据状态信息确定第二阈值;上述根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,包括:根据流控规则和平均响应时间确定第三阈值;确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。
在其中一个实施例中,一种接口动态流量控制装置还包括采集模块,采集模块用于获取目标接口的预设类别信息的数据采集频率和数据采集参数;根据数据采集频率和数据采集参数从目标接口中采集多个目标业务请求的多个第三相关数据;根据多个第三相关数据计算多个目标业务请求的请求响应时间。
在其中一个实施例中,一种接口动态流量控制装置还包括熔断处理模块,熔断处理模块用于当目标接口的目标业务请求数量超过阈值时,控制目标接口接入第一数量的目标业务请求,并将第二数量的目标业务请求进行熔断处理,第一数量为阈值,第二数量为目标业务请求数量与阈值的差值。
关于一种接口动态流量控制装置的具体限定可以参见上文中对于一种接口动态流量控制方法的限定,在此不再赘述。上述一种接口动态流量控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端连接,以读取终端上的界面元素信息。该计算机程序被处理器执行时以实现一种接口动态流量控制方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取数据系统的目标接口的预设类别信息对应的流控规则;获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。
在其中一个实施例中,目标接口包括数据系统的网关层接口,处理器执行计算机程序实现上述的获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间的步骤时,具体实现以下步骤:获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,处理器执行计算机程序实现上述的根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值的步骤时,具体实现以下步骤:从流控规则中获取与平均响应时间匹配的第一阈值,将第一阈值作为目标业务请求数量的阈值。
在其中一个实施例中,目标接口包括数据系统的应用服务器的应用层接口,处理器执行计算机程序实现上述的获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间的步骤时,具体实现以下步骤:获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,处理器执行计算机程序时实现以下步骤:获取应用服务器对应的数据支撑系统的状态信息,数据支撑系统用于响应应用服务器发送的多个第二业务请求;根据状态信息确定第二阈值;处理器执行计算机程序实现上述的根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值的步骤时,具体实现以下步骤:根据流控规则和平均响应时间确定第三阈值;确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。
在其中一个实施例中,处理器执行计算机程序时实现以下步骤:获取目标接口的预设类别信息的数据采集频率和数据采集参数;根据数据采集频率和数据采集参数从目标接口中采集多个目标业务请求的多个第三相关数据;根据多个第三相关数据计算多个目标业务请求的请求响应时间。
在其中一个实施例中,处理器执行计算机程序时实现以下步骤:当目标接口的目标业务请求数量超过阈值时,控制目标接口接入第一数量的目标业务请求,并将第二数量的目标业务请求进行熔断处理,第一数量为阈值,第二数量为目标业务请求数量与阈值的差值。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取数据系统的目标接口的预设类别信息对应的流控规则;获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间;根据多个目标业务请求的请求响应时间计算在预定时间段内目标业务请求的平均响应时间;根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值,以通过阈值控制目标接口中目标业务请求的连接数量。
在其中一个实施例中,目标接口包括数据系统的网关层接口,计算机程序被处理器执行实现上述的获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间的步骤时,具体实现以下步骤:获取网关层接口的多个第一业务请求的多个第一相关数据,多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;根据各第一业务请求的请求类别从多个第一业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,计算机程序被处理器执行实现上述的根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值的步骤时,具体实现以下步骤:从流控规则中获取与平均响应时间匹配的第一阈值,将第一阈值作为目标业务请求数量的阈值。
在其中一个实施例中,目标接口包括数据系统的应用服务器的应用层接口,计算机程序被处理器执行实现上述的获取预设类别信息对应的目标接口的多个目标业务请求的请求响应时间的步骤时,具体实现以下步骤:获取应用层接口的多个第二业务请求的多个第二相关数据,多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;根据各第二业务请求的请求类别从多个第二业务请求中识别出预设类别信息对应的多个目标业务请求;从多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;根据各目标业务请求的触发时间和响应结束时间计算各目标业务请求的请求响应时间。
在其中一个实施例中,计算机程序被处理器执行时实现以下步骤:获取应用服务器对应的数据支撑系统的状态信息,数据支撑系统用于响应应用服务器发送的多个第二业务请求;根据状态信息确定第二阈值;计算机程序被处理器执行实现上述的根据流控规则和平均响应时间设置目标接口的目标业务请求数量的阈值的步骤时,具体实现以下步骤:根据流控规则和平均响应时间确定第三阈值;确定第二阈值和第三阈值之间的最小值,将最小值作为目标业务请求数量的阈值。
在其中一个实施例中,计算机程序被处理器执行时实现以下步骤:获取目标接口的预设类别信息的数据采集频率和数据采集参数;根据数据采集频率和数据采集参数从目标接口中采集多个目标业务请求的多个第三相关数据;根据多个第三相关数据计算多个目标业务请求的请求响应时间。
在其中一个实施例中,计算机程序被处理器执行时实现以下步骤:当目标接口的目标业务请求数量超过阈值时,控制目标接口接入第一数量的目标业务请求,并将第二数量的目标业务请求进行熔断处理,第一数量为阈值,第二数量为目标业务请求数量与阈值的差值。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种接口动态流量控制方法,所述方法包括:
获取数据系统的目标接口的预设类别信息对应的流控规则;
获取所述预设类别信息对应的所述目标接口的多个目标业务请求的请求响应时间;
根据所述多个目标业务请求的请求响应时间计算在预定时间段内所述目标业务请求的平均响应时间;
根据所述流控规则和所述平均响应时间设置所述目标接口的目标业务请求数量的阈值,以通过所述阈值控制所述目标接口中所述目标业务请求的连接数量。
2.根据权利要求1所述的方法,其特征在于,所述目标接口包括所述数据系统的网关层接口,所述获取所述预设类别信息对应的所述目标接口的多个目标业务请求的请求响应时间,包括:
获取所述网关层接口的多个第一业务请求的多个第一相关数据,所述多个第一相关数据中包括各第一业务请求的请求类别、各第一业务请求的触发时间以及各第一业务请求的响应结束时间;
根据所述各第一业务请求的请求类别从多个第一业务请求中识别出所述预设类别信息对应的所述多个目标业务请求;
从所述多个第一业务请求的多个第一相关数据中获取各目标业务请求的触发时间和响应结束时间;
根据所述各目标业务请求的触发时间和响应结束时间计算所述各目标业务请求的请求响应时间。
3.根据权利要求2所述的方法,其特征在于,所述根据所述流控规则和所述平均响应时间设置所述目标接口的目标业务请求数量的阈值,包括:
从所述流控规则中获取与所述平均响应时间匹配的第一阈值,将所述第一阈值作为所述目标业务请求数量的阈值。
4.根据权利要求1所述的方法,其特征在于,所述目标接口包括所述数据系统的应用服务器的应用层接口,所述获取所述预设类别信息对应的所述目标接口的多个目标业务请求的请求响应时间,包括:
获取所述应用层接口的多个第二业务请求的多个第二相关数据,所述多个第二相关数据中包括各第二业务请求的请求类别、各第二业务请求的触发时间以及各第二业务请求的响应结束时间;
根据所述各第二业务请求的请求类别从多个第二业务请求中识别出所述预设类别信息对应的所述多个目标业务请求;
从所述多个第二业务请求的多个第二相关数据中获取各目标业务请求的触发时间和响应结束时间;
根据所述各目标业务请求的触发时间和响应结束时间计算所述各目标业务请求的请求响应时间。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
获取所述应用服务器对应的数据支撑系统的状态信息,所述数据支撑系统用于响应所述应用服务器发送的所述多个第二业务请求;
根据所述状态信息确定第二阈值;
所述根据所述流控规则和所述平均响应时间设置所述目标接口的目标业务请求数量的阈值,包括:
根据所述流控规则和所述平均响应时间确定第三阈值;
确定所述第二阈值和所述第三阈值之间的最小值,将所述最小值作为所述目标业务请求数量的阈值。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述目标接口的所述预设类别信息的数据采集频率和数据采集参数;
根据所述数据采集频率和所述数据采集参数从所述目标接口中采集所述多个目标业务请求的多个第三相关数据;
根据所述多个第三相关数据计算所述多个目标业务请求的请求响应时间。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述目标接口的目标业务请求数量超过所述阈值时,控制所述目标接口接入第一数量的所述目标业务请求,并将第二数量的所述目标业务请求进行熔断处理,所述第一数量为所述阈值,所述第二数量为所述目标业务请求数量与所述阈值的差值。
8.一种接口动态流量控制装置,其特征在于,所述装置包括:
第一获取模块,用于获取数据系统的目标接口的预设类别信息对应的流控规则;
第二获取模块,用于获取所述预设类别信息对应的所述目标接口的多个目标业务请求的请求响应时间;
计算模块,用于根据所述多个目标业务请求的请求响应时间计算在预定时间段内所述目标业务请求的平均响应时间;
设置模块,用于根据所述流控规则和所述平均响应时间设置所述目标接口的目标业务请求数量的阈值,以通过所述阈值控制所述目标接口中所述目标业务请求的连接数量。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111601181.XA CN114465959A (zh) | 2021-12-24 | 2021-12-24 | 接口动态流量控制方法、装置、计算机设备和存储介质 |
CA3184580A CA3184580A1 (en) | 2021-12-24 | 2022-12-21 | Interface dynamic flow control method and device, computer equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111601181.XA CN114465959A (zh) | 2021-12-24 | 2021-12-24 | 接口动态流量控制方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114465959A true CN114465959A (zh) | 2022-05-10 |
Family
ID=81406853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111601181.XA Pending CN114465959A (zh) | 2021-12-24 | 2021-12-24 | 接口动态流量控制方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114465959A (zh) |
CA (1) | CA3184580A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116418749A (zh) * | 2023-02-17 | 2023-07-11 | 通明智云(北京)科技有限公司 | 一种动态调整权重的负载均衡方法及装置 |
WO2023240506A1 (zh) * | 2022-06-15 | 2023-12-21 | 北京小米移动软件有限公司 | 请求处理方法、装置、服务端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3152223A1 (en) * | 2019-08-23 | 2021-03-04 | 10353744 Canada Ltd. | Method and apparatus for controlling flow of service interface, and computer device and storage medium |
CN112953840A (zh) * | 2021-01-27 | 2021-06-11 | 上海金仕达成括信息科技有限公司 | 一种限流控制方法、网关设备及限流控制系统 |
CN113179222A (zh) * | 2021-04-30 | 2021-07-27 | 康键信息技术(深圳)有限公司 | 热点数据的限流控制方法、装置、设备及存储介质 |
CN113472679A (zh) * | 2021-09-02 | 2021-10-01 | 杭州星犀科技有限公司 | 接口限流方法和系统 |
CN113595922A (zh) * | 2021-07-29 | 2021-11-02 | 上海浦东发展银行股份有限公司 | 一种流量限制方法、装置、服务器及存储介质 |
-
2021
- 2021-12-24 CN CN202111601181.XA patent/CN114465959A/zh active Pending
-
2022
- 2022-12-21 CA CA3184580A patent/CA3184580A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3152223A1 (en) * | 2019-08-23 | 2021-03-04 | 10353744 Canada Ltd. | Method and apparatus for controlling flow of service interface, and computer device and storage medium |
CN112953840A (zh) * | 2021-01-27 | 2021-06-11 | 上海金仕达成括信息科技有限公司 | 一种限流控制方法、网关设备及限流控制系统 |
CN113179222A (zh) * | 2021-04-30 | 2021-07-27 | 康键信息技术(深圳)有限公司 | 热点数据的限流控制方法、装置、设备及存储介质 |
CN113595922A (zh) * | 2021-07-29 | 2021-11-02 | 上海浦东发展银行股份有限公司 | 一种流量限制方法、装置、服务器及存储介质 |
CN113472679A (zh) * | 2021-09-02 | 2021-10-01 | 杭州星犀科技有限公司 | 接口限流方法和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023240506A1 (zh) * | 2022-06-15 | 2023-12-21 | 北京小米移动软件有限公司 | 请求处理方法、装置、服务端及存储介质 |
CN116418749A (zh) * | 2023-02-17 | 2023-07-11 | 通明智云(北京)科技有限公司 | 一种动态调整权重的负载均衡方法及装置 |
CN116418749B (zh) * | 2023-02-17 | 2023-11-17 | 通明智云(北京)科技有限公司 | 一种动态调整权重的负载均衡方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CA3184580A1 (en) | 2023-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108965381B (zh) | 基于Nginx的负载均衡实现方法、装置、计算机设备和介质 | |
CN114465959A (zh) | 接口动态流量控制方法、装置、计算机设备和存储介质 | |
US20180018293A1 (en) | Method, controller, and system for service flow control in object-based storage system | |
US10440136B2 (en) | Method and system for resource scheduling | |
WO2020253111A1 (zh) | 区块链节点的自动扩容方法、装置、运维终端及存储介质 | |
CN111459750A (zh) | 基于非扁平网络的私有云监控方法、装置、计算机设备及存储介质 | |
CN112612618B (zh) | 接口限流方法、装置、计算机设备和存储介质 | |
CN112689007A (zh) | 资源分配方法、装置、计算机设备和存储介质 | |
CN111756644B (zh) | 热点限流方法、系统、设备及存储介质 | |
CN111277640B (zh) | 用户请求处理方法、装置、系统、计算机设备和存储介质 | |
CN110716808A (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
CN110896357B (zh) | 流量预测方法、装置和计算机可读存储介质 | |
CN110932908B (zh) | 一种选择网络切片接入的方法、装置及系统 | |
CN112165436A (zh) | 流量控制方法、装置及系统 | |
CN111585837A (zh) | 物联网数据链路监控方法、装置、计算机设备和存储介质 | |
CN111010303A (zh) | 一种服务器控制方法及装置 | |
CN115225504B (zh) | 资源配置方法、装置、电子设备及存储介质 | |
CN112367384A (zh) | 基于Kafka集群的动态限速方法、装置以及计算机设备 | |
CN116346740A (zh) | 一种负载均衡方法及装置 | |
CN109471852B (zh) | 医疗数据库建立方法、装置、计算机设备和存储介质 | |
CN112346880A (zh) | 接口调用方法、装置、计算机可读存储介质和计算机设备 | |
CN114936089A (zh) | 资源调度方法、系统、设备及存储介质 | |
CN113691587B (zh) | 一种虚拟资源处理方法、装置、电子设备及存储介质 | |
CN115017538A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN112862495A (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 |