CN113676434B - 网络资源的熔断方法、装置、电子设备及存储介质 - Google Patents
网络资源的熔断方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113676434B CN113676434B CN202010400751.8A CN202010400751A CN113676434B CN 113676434 B CN113676434 B CN 113676434B CN 202010400751 A CN202010400751 A CN 202010400751A CN 113676434 B CN113676434 B CN 113676434B
- Authority
- CN
- China
- Prior art keywords
- window
- fusing
- determining
- current window
- access
- 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 90
- 230000002159 abnormal effect Effects 0.000 claims description 79
- 238000001514 detection method Methods 0.000 claims description 34
- 230000015654 memory Effects 0.000 claims description 22
- 230000003321 amplification Effects 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 12
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 22
- 230000010355 oscillation Effects 0.000 abstract description 13
- 230000007547 defect Effects 0.000 abstract description 12
- 238000004364 calculation method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000007664 blowing Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 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
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
Abstract
本申请实施例提供了一种网络资源的熔断方法、装置、电子设备、程序产品、芯片及存储介质,包括:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口,若当前窗口达到起始窗口,则获取访问网络资源的相关信息,根据相关信息执行熔断操作,通过引入起始窗口,可以避免相关技术中熔断判断条件简单造成的该熔断时不熔断,不该熔断时熔断的弊端,从而实现了降低错误执行熔断操作的效果;且可以避免由于在刚接入网络资源时,网络震荡相对较大,错误的执行熔断操作的弊端,从而实现了提高熔断的准确率的技术效果。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种网络资源的熔断方法、装置、电子设备、程序产品、芯片及存储介质。
背景技术
终端设备(如手机、iPad、台式电脑、笔记本电脑和智能手表等)可通过网络对网络资源进行访问,而随着互联网技术的发展,终端设备的类型和数量迅速增加,网络资源的访问量也迅速增加,为了确保网络资源的系统(如服务器)的稳定性,以及终端设备访问网络资源的效率等,引入了熔断的概念。
在现有技术中,一般采用,从第一个窗口开始的某时间段内的异常数或者异常百分比判断是否进入熔断。例如,获取时间段内的访问网络资源的异常数(即时间段内,终端设备无法正常访问网络资源的次数),若异常数大于预设的异常数阈值,则进入熔断;或者,获取时间段内的访问网络资源的异常数和总数(即时间段内,终端设备总共访问网络资源的次数),计算异常百分比(即异常数/总数),若异常百分比大于预设的异常百分比阈值,则进入熔断。
然而,发明人发现现有技术至少存在以下问题:忽略了由于网络环境(如网络震荡)造成的熔断的可靠性偏低的问题。
发明内容
为解决上述技术问题,本申请实施例提供了一种网络资源的熔断方法、装置、电子设备、程序产品、芯片及存储介质。
根据本申请实施例的一个方面,本申请实施例提供了一种网络资源的熔断方法,所述方法包括:
确定起始窗口,所述起始窗口用于表征开始执行熔断条件判断的窗口;
若当前窗口达到所述起始窗口,则获取访问网络资源的相关信息;
根据所述相关信息执行熔断操作。
本申请实施例通过确定起始窗口的方案,可以避免相关技术中,从第一个窗口就执行熔断条件判断的方案造成的熔断判断条件简单,受网络震荡等因素影响导致误判(即错误的决定是否熔断)概率大的弊端,从而实现准确对网络资源进行熔断的技术效果。
也就是说,本申请实施例通过引入起始窗口,可以避免相关技术中熔断判断条件简单造成的该熔断时不熔断,不该熔断时熔断的弊端,从而实现了降低错误执行熔断操作的效果;且可以避免由于在刚接入网络资源时,网络震荡相对较大,错误的执行熔断操作的弊端,从而实现了提高熔断的准确率的技术效果,且提高了用户的访问体验。
在一些实施例中,所述相关信息包括异常数和前周期成功率,其中,所述前周期成功率用于表征从所述起始窗口至所述当前窗口,访问网络资源的成功的概率,所述根据所述相关信息执行熔断操作包括:
根据所述前周期成功率确定前周期异常率;
若所述异常数大于预设的第一阈值,且所述前周期异常率大于预设的第二阈值,则执行熔断操作。
在本申请实施例中,通过结合异常数和前周期异常率两个维度确定执行熔断操作,可以提高熔断操作的可靠性和准确性的技术效果。
在一些实施例中,若所述当前窗口达到检测周期内的最后一个窗口,则在所述根据所述前周期成功率确定前周期异常率之后,所述方法还包括:
确定所述检测周期内的异常百分比;
根据所述前周期异常率和所述异常百分比执行熔断操作。
同理,在本申请实施例中,通过结合异常百分比和前周期异常率两个维度确定执行熔断操作,可以提高熔断操作的可靠性和准确性的技术效果。
在一些实施例中,所述根据所述前周期异常率和所述异常百分比执行熔断操作包括:
若所述异常百分比大于预设的第三阈值,且所述前周期异常率大于所述第二阈值,则执行熔断操作。
在一些实施例中,所述方法还包括:
若所述当前窗口达到所述起始窗口,则获取访问网络资源的总次数;
根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口;
若更新后的起始窗口超过所述当前窗口,则获取访问网络资源的相关信息。
在本申请实施例中,一方面,引入了异常后访问放大倍数,且异常后访问放大倍数可以用于表征在对网络资源的访问失败之后,对网络资源的访问失败的可能性会增加的系数,而通过引入异常后访问放大倍数,可以提高网络资源的系统的稳定性;另一方面,通过对起始窗口进行更新,可以实现基于网络环境对起始窗口进行适应性地调整,从而提高起始窗口的可靠性和准确性,进而实现提高熔断的可靠性和准确性,且增加了用户的访问体验。
在一些实施例中,所述根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口包括:
根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为所述总窗口,aF为所述异常后访问放大倍数,tT为所述可容忍异常数,k为所述当前窗口,cW为所述窗口时长,sC为所述访问网络资源的总次数;
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;
若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
在一些实施例中,所述方法还包括:
若所述当前窗口未达到检测周期内的最后一个窗口,则确定所述当前窗口内的访问次数;
根据所述当前窗口内的访问次数和预设的窗口时长,确定所述当前窗口的可容忍异常数;
若所述当前窗口的可容忍异常数大于预设的第四阈值,则当所述前窗口达到所述起始窗口,获取访问网络资源的相关信息。
在一些实施例中,所述方法还包括:
若所述当前窗口的可容忍异常数小于或等于所述第四阈值,则确定所述当前窗口的访问频率;
根据所述访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
在一些实施例中,在所述根据所述相关信息执行熔断操作之后,所述方法还包括:
确定访问次数;
根据所述访问次数确定试探性尝试次数,其中,所述试探性尝试次数用于表征从所述访问次数中选取的至少部分访问次数;
确定所述试探性尝试次数的异常比;
若所述异常比大于预设的第五阈值,则执行熔断操作。
在本申请实施例中,引入了试探性尝试次数,且试探性尝试次数为访问次数中的至少部分,一方面,可以实现对首次熔断和非首次熔断采用不同的熔断策略,进而可以实现网络资源熔断的多样性和灵活性的技术效果;另一方面,可以避免相关技术中,对各访问次数均进行统计并计算,浪费计算资源的弊端,从而实现节约计算资源和计算成本的技术效果;再一方面,通过只选取访问次数中的至少部分访问次数对网络资源进行访问,而对其他访问直接返回,充分考虑了,在网络资源熔断之后,网络资源在短时间内可能还未正常恢复的问题,直接对其他访问进行返回,可以实现释放和节约线程的技术效果。
在一些实施例中,所述根据所述访问次数确定试探性尝试次数包括:
根据预设的提取因子从所述访问次数中提取所述试探性尝试次数。
在本申请实施例中,还引入了提取因子,提取因子可以用于表征试探性尝试次数占访问次数的比例,即根据一个怎样的百分比从访问次数中选取试探性尝试次数。
根据本申请实施例的另一个方面,本申请实施例还提供了一种网络资源的熔断装置,所述装置包括:
确定模块,用于确定起始窗口,所述起始窗口用于表征开始执行熔断条件判断的窗口;
获取模块,用于若当前窗口达到所述起始窗口,则获取访问网络资源的相关信息;
执行模块,用于根据所述相关信息执行熔断操作。
在一些实施例中,所述相关信息包括异常数和前周期成功率,其中,所述前周期成功率用于表征从所述起始窗口至所述当前窗口,访问网络资源的成功的概率,所述执行模块用于,根据所述前周期成功率确定前周期异常率,若所述异常数大于预设的第一阈值,且所述前周期异常率大于预设的第二阈值,则执行熔断操作。
在一些实施例中,若所述当前窗口达到检测周期内的最后一个窗口,则所述确定模块用于,确定所述检测周期内的异常百分比;
所述执行模块用于,根据所述前周期异常率和所述异常百分比执行熔断操作。
在一些实施例中,所述执行模块用于,若所述异常百分比大于预设的第三阈值,且所述前周期异常率大于所述第二阈值,则执行熔断操作。
在一些实施例中,所述获取模块用于,若所述当前窗口达到所述起始窗口,则获取访问网络资源的总次数;
所述确定模块用于,根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口;
所述获取模块用于,若更新后的起始窗口超过所述当前窗口,则获取访问网络资源的相关信息。
在一些实施例中,所述确定模块用于,根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为所述总窗口,aF为所述异常后访问放大倍数,tT为所述可容忍异常数,k为所述当前窗口,cW为所述窗口时长,sC为所述访问网络资源的总次数;
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;
若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
在一些实施例中,所述确定模块用于,若所述当前窗口未达到检测周期内的最后一个窗口,则确定所述当前窗口内的访问次数,根据所述当前窗口内的访问次数和预设的窗口时长,确定所述当前窗口的可容忍异常数;
所述获取模块用于,若所述当前窗口的可容忍异常数大于预设的第四阈值,则当所述前窗口达到所述起始窗口,获取访问网络资源的相关信息。
在一些实施例中,所述确定模块用于,若所述当前窗口的可容忍异常数小于或等于所述第四阈值,则确定所述当前窗口的访问频率;
所述执行模块用于,根据所述访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
在一些实施例中,所述确定模块用于,确定访问次数,根据所述访问次数确定试探性尝试次数,确定所述试探性尝试次数的异常比;
所述执行模块用于,若所述异常比大于预设的第五阈值,则执行熔断操作。
在一些实施例中,所述确定模块用于,根据预设的提取因子从所述访问次数中提取所述试探性尝试次数。
根据本申请实施例的另一个方面,本申请实施例还提供了一种计算机存储介质,所述计算机存储介质上存储有计算机指令,当所述计算机指令在被处理器运行时,使得上述任一实施例所述的方法被执行。
根据本申请实施例的另一个方面,本申请实施例还提供了一种计算机程序产品,当所述计算机程序产品在处理器上运行时,使得上述任一实施例所述的方法被执行。
根据本申请实施例的另一个方面,本申请实施例还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,使得上述任一实施例所述的方法被执行。
根据本申请实施例的另一个方面,本申请实施例还提供了一种芯片,包括:
输入接口,用于接收访问网络资源的请求;
逻辑电路,用于执行如上任一实施例所述的方法;
输出接口,用于输出所述网络资源。
附图说明
附图用于更好地理解本申请实施例,不构成对本申请的限定。其中,
图1为本申请实施例的网络资源的熔断方法的应用场景示意图;
图2为本申请一个实施例的网络资源的熔断方法的流程示意图;
图3为本申请另一实施例的网络资源的熔断方法的流程示意图;
图4为本申请另一实施例的网络资源的熔断方法的流程示意图;
图5为本申请另一实施例的网络资源的熔断方法的流程示意图;
图6为本申请实施例与相关技术的一个对比示例的示意图;
图7为本申请实施例与相关技术的另一对比示例的示意图;
图8为本申请实施例的网络资源的熔断装置的示意图;
图9为本申请实施例的电子设备的框图;
图10为本申请实施例的芯片的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提供的网络资源的访问方法,可以适用于如图1所示的应用场景。
在如图1所示的应用场景中,各终端设备可以对服务器中存储的网络资源进行访问。
其中,服务器可以为具有授权和鉴权等功能的服务器,服务器的数量可以为多个,各服务器之间可以远程过程调用协议(Remote Procedure Call Protocol,RPC)连接。
且每个服务器均可以设置多个组件,如权限资源标志和帐号授权关系管理的组件,用于存储系统临时数据的分布式缓冲的组件,结构化查询语言数据服务的组件,以及数据库组件,等等。
且无论是对各服务器之间的调用时,或者,对各服务器中的组件中存储的网络资源进行访问时,均可以采用本申请实施例中的网络资源的访问方法。
其中,终端设备可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(Radio Access Network,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless LocalLoop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(Subscriber Station),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、远程终端(RemoteTerminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(UserAgent)、用户设备(User Device or User Equipment),在此不作限定。可选的,上述终端设备还可以是智能手表、平板电脑等设备。
在相关技术中,一般采用,从第一个窗口开始的某时间段内的异常数或者异常百分比判断是否进入熔断。
然而,通过相关技术中的方案,容易造成熔断的可靠性偏低的问题。
为了解决上述问题,本申请实施例的发明人在经过创造性地劳动之后,想到了本申请实施例的发明构思:通过引入起始窗口,在当前窗口达到起始窗口时,执行熔断条件的判断。且通过该发明构思,可以避免访问开始时,受到网络震荡而造成的误熔断的弊端,从而提高熔断的可靠性,提高用户的访问体验。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
一个方面,本申请实施例提供了一种适用于上述应用场景的网络资源的熔断方法。
请参阅图2,图2为本申请一个实施例的网络资源的熔断方法的流程示意图。
如图2所示,该方法包括:
S101:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口。
其中,本申请实施例的执行主体可以为网络资源的熔断装置,且网络资源的熔断装置可以为服务器(包括本地服务器和云端服务器),也可以为设置有执行本申请实施例的网络资源的熔断方法的处理器或者芯片,等等。
在本申请实施例中,引入了起始窗口的概念,且起始窗口用于表征开始执行熔断条件判断的窗口。
本申请实施例通过确定起始窗口的方案,可以避免相关技术中,从第一个窗口就执行熔断条件判断的方案造成的熔断判断条件简单,受网络震荡等因素影响导致误判(即错误的决定是否熔断)概率大的弊端,从而实现准确对网络资源进行熔断的技术效果。
也就是说,本申请实施例通过引入起始窗口,可以避免相关技术中熔断判断条件简单造成的该熔断时不熔断,不该熔断时熔断的弊端,从而实现了降低错误执行熔断操作的效果;且可以避免由于在刚接入网络资源时,网络震荡相对较大,错误的执行熔断操作的弊端,从而实现了提高熔断的准确率的技术效果。
其中,起始窗口可以基于需求、经验和试验等进行设定。
具体地,需求可能为预设的参数,包括网络资源运行的参数,则可以对网络资源运行的参数进行计算,得到起始窗口。
当然,预设的参数还可以包括熔断可信度参数,一般而言,熔断可信度参数越大,熔断操作的可靠性越高,则还可以根据熔断可信度参数计算得到起始窗口。
具体地,当根据经验对起始窗口进行设定时,可以根据历史熔断操作的相关信息确定起始窗口。
具体地,当根据试验对起始窗口进行设定时,可以将多个不同的窗口设置为起始窗口,并确定不同的起始窗口对应的熔断操作的相关信息(如熔断操作的准确性),并根据熔断操作的相关信息(如熔断操作的准确性)对起始窗口进行设定。
S102:若当前窗口达到起始窗口,则获取访问网络资源的相关信息。
其中,该步骤可以具体包括:对窗口进行监测,判断当前窗口是否达到起始窗口,若当前窗口达到起始窗口,则获取访问网络资源的相关信息;若当前窗口没有达到起始窗口,则继续监测窗口。
其中,相关信息用于表征访问网络资源时产生的信息,如访问网络资源正常数(即能够正常访问网络资源的次数)、异常数(即无法正常访问网络资源的次数)和成功率(即能够正常访问网络资源的次数/访问网络资源的总次数)等。
S103:根据相关信息执行熔断操作。
其中,该步骤的实现方式有多种,例如,根据相关信息中的正常数执行熔断操作;或者,根据相关信息中的异常数执行熔断操作;或者,根据相关信息中的成功率执行熔断操作,等等,此处不再一一列举。
基于上述分析可知,本申请实施例提供了一种网络资源的熔断方法,该方法包括:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口,若当前窗口达到起始窗口,则获取访问网络资源的相关信息,根据相关信息执行熔断操作,通过引入起始窗口,可以避免相关技术中熔断判断条件简单造成的该熔断时不熔断,不该熔断时熔断的弊端,从而实现了降低错误执行熔断操作的效果;且可以避免由于在刚接入网络资源时,网络震荡相对较大,错误的执行熔断操作的弊端,从而实现了提高熔断的准确率的技术效果。
请参阅图3,图3为本申请另一实施例的网络资源的熔断方法的流程示意图。
如图3所示,该方法包括:
S201:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口。
其中,关于S201的描述可以参见S101,此处不再赘述。
S202:若当前窗口达到起始窗口,则获取访问网络资源的相关信息。
其中,关于S202的描述可以参见S102,此处不再赘述。且相关信息包括异常数和前周期成功率,其中,前周期成功率用于表征从起始窗口至当前窗口,访问网络资源的成功的概率。
也就是说,相关信息包括从起始窗口至当前窗口,访问网络资源的访问失败的次数(即异常数),相关信息还包括从起始窗口至当前窗口,访问网络资源的成功的概率(即前周期成功率)。
S203:根据前周期成功率确定前周期异常率。
其中,前周期成功率与前周期异常率二者的和为1。
S204:判断当前窗口是否达到检测周期内的最后一个窗口,若否,则执行S205;若是,则执行S206。
其中,检测周期为预先设置的检测时长,如20秒等。
S205:若异常数大于预设的第一阈值,且前周期异常率大于预设的第二阈值,则执行熔断操作。
该步骤可以具体包括:若当前窗口没有达到检测周期内的最后一个窗口,则判断异常数是否大于第一阈值,若是,则继续判断前周期异常率是否大于第二阈值,若是,则执行熔断操作;否则,暂时不执行熔断操作。
当然,该步骤可以先执行对前周期异常率的判断,而后执行对异常数的判断,本申请对该二者的判断顺序不做限定。
同理,第一阈值和/或第二阈值,也可以基于需求、经验和试验等进行设定,具体设定的原理可以参见上述示例,此处不再赘述。
S206:确定检测周期内的异常百分比。
也就是说,在该步骤中,若当前窗口达到检测周期内的最后一个窗口,则对异常百分比进行确定。
在一些实施例中,S206可以具体包括:获取检测周期内的访问网络资源的异常总数,获取检测周期内的访问网络资源的总次数,则异常百分比=检测周期内的访问网络资源的异常总数/检测周期内的访问网络资源的总次数。
当然,在另一些实施例中,S206可以具体包括:获取检测周期内的访问网络资源的成功总数,获取检测周期内的访问网络资源的总次数,则异常百分比=(检测周期内的访问网络资源的总次数-检测周期内的访问网络资源的成功总数)/检测周期内的访问网络资源的总次数。
S207:根据前周期异常率和异常百分比执行熔断操作。
在一些实施例中,S207包括:若异常百分比大于预设的第三阈值,且前周期异常率大于第二阈值,则执行熔断操作。
其中,该步骤可以具体包括:判断异常百分比是否大于第三阈值,若是,则继续判断前周期异常率是否大于第二阈值,若是,则执行熔断操作;否则,暂时不执行熔断操作。
同理,该步骤可以先执行对前周期异常率的判断,而后执行对异常百分比的判断,本申请对该二者的判断顺序不做限定。
请参阅图4,图4为本申请另一实施例的网络资源的熔断方法的流程示意图。
如图4所示,该方法包括:
S301:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口。
其中,关于S301的描述可以参见S101,此处不再赘述。
S302:判断当前窗口是否达到起始窗口,若是,则执行S303和S304;若否,则执行S305至S310。
S303:获取访问网络资源的总次数。
其中,取访问网络资源的总次数用于表征,从第一个窗口至当前窗口(包括第一个窗口和当前窗口),访问网络资源的总的次数,即为从第一个窗口至当前窗口中各窗口的访问网络资源的次数的总和。
S304:根据当前窗口、访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口。
其中,总窗口、异常后访问放大倍数、可容忍异常数及窗口时长均为预先设置的参数。其总窗口用于表征在检测周期内,总共的窗口的数量;窗口时长用于表征一个窗口的时长。
值得说明地是,在本申请实施例中,引入了异常后访问放大倍数,且异常后访问放大倍数可以用于表征在对网络资源的访问失败之后,对网络资源的访问失败的可能性会增加的系数。
具体地,在实际访问某网络资源的过程中,若访问失败,则一般会在短时间内进行连续访问,为了确保网络资源的系统的稳定性,我们在本申请实施例中引入了异常后访问放大倍数。
在一些实施例中,S304可以包括:根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为总窗口,aF为异常后访问放大倍数,tT为可容忍异常数,k为当前窗口,cW为窗口时长,sC为访问网络资源的总次数。
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
且在确定出更新后的起始窗口之后,可以返回执行S302,即判断更新后的起始窗口是否超过当前窗口,则获取访问网络资源的相关信息。
S305:确定当前窗口内的访问次数。
S306:根据当前窗口内的访问次数和预设的窗口时长,确定当前窗口的可容忍异常数。
在一些实施例中,可容忍异常数=当前窗口内的访问次数/窗口时长。
S307:判断当前窗口的可容忍异常数是否大于预设的第四阈值,若是,则执行S308;若否,则执行S309和S310。
同理,第四阈值可以基于需求、经验和试验进行设定。具体设定原理可以参见上述示例,此处不再赘述。
S308:对窗口进行监测,且当监测的窗口达到起始窗口时,执行S303。
S309:确定当前窗口的访问频率。
其中,访问频率用于表征当前窗口内,网络资源被访问的频率。
S310:根据访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
在一些实施例中,S310包括:若访问频率>异常后访问放大倍数*总窗口,执行熔断操作,或者流程结束;若访问频率≤异常后访问放大倍数*总窗口,则返回至S308。
值得说明地是,若访问频率>异常后访问放大倍数*总窗口,则说明可能为在对网络资源的访问失败后,在短时间内对网络资源进行快速连续地访问,为了确保网络资源的系统的稳定性,可以直接执行熔断操作,也可以结束流程。
请参阅图5,图5为本申请另一实施例的网络资源的熔断方法的流程示意图。
如图5所示,该方法包括:
S401:确定起始窗口,起始窗口用于表征开始执行熔断条件判断的窗口。
其中,关于S401的描述可以参见S101,此处不再赘述。
S402:若当前窗口达到起始窗口,则获取访问网络资源的相关信息。
其中,关于S402的描述可以参见S102,此处不再赘述。
S403:根据相关信息执行熔断操作。
其中,关于S403的描述可以参见S103,此处不再赘述。
S404:确定访问次数。
值得说明地是,在根据相关信息执行熔断操作之后,网络资源进入熔断期,在熔断期内,无法对网络资源进行访问。且熔断期可以基于检测周期确定,如熔断期=检测周期/2,若检测周期为20秒,则熔断期可以设置为10秒。
其中,访问次数可以为某时长内访问网络资源的次数,且该时长可以基于需求、经验和试验进行设定。
例如,时长具体为窗口时长,则访问次数为窗口时长内访问网络资源的次数,且若窗口时长检测周期为20秒,共有10个窗口,则窗口时长为2秒。也就是说,访问次数可以为2秒内访问网络资源的次数。
S405:根据访问次数确定试探性尝试次数,其中,试探性尝试次数用于表征从访问次数中选取的至少部分访问次数。
在本申请实施例中,还引入了试探性尝试次数,且试探性尝试次数为访问次数中的至少部分。
值得说明地是,在相关技术中,对首次熔断和非首次熔断,采用相同的熔断策略。而在本申请实施例中,对首次熔断和非首次熔断采用不同的熔断策略,若为首次熔断,则可以采用图2至图4中任一图所示的方法,而为非首次熔断,则可以采用如图5所示的方法,即引入试探性尝试次数,并基于试探性尝试次数执行熔断操作的方法。
且相较于相关技术,一方面,本申请实施例通过对首次熔断和非首次熔断,采用不同的方法实现,可以实现网络资源熔断的多样性和灵活性的技术效果;另一方面,通过引入试探性尝试次数,可以避免相关技术中,对各访问次数均进行统计并计算,浪费计算资源的弊端,从而实现节约计算资源和计算成本的技术效果;再一方面,通过引入试探性尝试次数,只选取访问次数中的至少部分访问次数对网络资源进行访问,而对其他访问直接返回,充分考虑了,在网络资源熔断之后,网络资源在短时间内可能还未正常恢复的问题,直接对其他访问进行返回,可以实现释放和节约线程的技术效果。
在一些实施例中,S405可以包括:根据预设的提取因子从访问次数中提取试探性尝试次数。
也就是说,在本申请实施例中,还引入了提取因子的概念,提取因子可以用于表征试探性尝试次数占访问次数的比例,即根据一个怎样的百分比从访问次数中选取试探性尝试次数。
同理,提取因子可以基于需求、经验和试验进行设定,对其进行设定的原理可以参见上述示例,此处不再赘述。
S406:确定试探性尝试次数的异常比。
其中,异常比用于表征试探性尝试次数中,访问网络资源失败的次数与试探性尝试次数的比值,即异常比=访问网络资源失败的次数/试探性尝试次数。
具体地,可以统计试探性尝试次数中,访问网络资源失败的次数,并根据该失败的次数和试探性尝试次数确定异常比;当然,也可以统计试探性尝试次数中,访问网络资源成功的次数,并根据该成功的次数和试探性尝试次数确定异常比,如异常比=(试探性尝试次数-该成功的次数)/试探性尝试次数。
S407:若异常比大于预设的第五阈值,则执行熔断操作。
该步骤可以具体包括:判断异常比是否大于第五阈值,若是,则执行熔断操作。
同理,第五阈值可以需求、经验和试验进行设定,其设定的原理可以参见上述示例,此处不再赘述。
为使读者更加深刻地理解基于本申请实施例带来的技术效果,现结合图6和图7对基于本申请实施例的方案带来的技术效果进行详细地阐述。
其中,假设检测周期cT为20秒,窗口时长cW为2秒,总窗口n为10个,k用于当前窗口,如k=0表征第一个窗口,k=1表征第二个窗口,以此类推,teCk用于表征第k个窗口的熔断异常数,teC用于表征k个窗口的熔断异常总数,tsCk用于表征第k个窗口的访问总次数,teP用于表征各窗口的熔断异常百分比,m用于表征起始窗口,tsP用于表征前周期成功率。
如图6所示,若预先设置的熔断异常数阈值为120,则当采用的为相关技术中的方案时,由于当k=0,即在第一个窗口时,第一个窗口的熔断异常数为120,而第一个窗口的熔断异常数teCk为120=熔断异常数阈值为120,则对网络资源进行熔断。
值得说明地是,在刚接入网络资源时,可能存在网络震荡,即网络稳定性相对较低,而此时对网络资源进行熔断,很可能导致熔断的误操作。
而通过本申请实施例方案,引入起始窗口,且基于访问网络资源的相关信息等,对起始窗口m进行不断地更新,如图6所示,在第一个窗口时,起始窗口m为9,在第二个窗口时,起始窗口m为8,而在第五个窗口时,起始窗口m为5,也就是说,在第五个窗口可以开始执行熔断的操作,且如图6所示,五个窗口的熔断异常总数teC为600,大于熔断异常数阈值为120,且前周期成功率tsP为0,若预先设置的前周期成功率为60%,则采用本申请实施例的方案,在第五个窗口时,对网络资源进行熔断。相对于采用相关技术中的方案,可以避免网络震荡等因素误入熔断。
如图7所示,若预先设置的熔断异常百分比阈值为30%,则采用相关技术中的方案,在第三个窗口,即k=2时,就会对网络资源进行熔断。
而在本申请实施例中,由于引入了起始窗口m,若起始窗口m为5,则在k=4时,开始执行熔断条件判断,则如图7所示,在整个检测周期内,无需对网路资源进行熔断。
也就是说,尽管在第五个周期之前,网络资源处于异常状态,但是,可能并非为网络资源本身的原因,而是由于网络震荡的原因,而第六个周期和第七个周期为恢复期,即网络震荡已经逐渐减退,则在第八周期至第十个周期时,网络震荡已经消除,可以对网络资源进行正常访问。
因此,基于对图6和图7的分析可知,通过采用本申请实施例的方案,通过引入起始窗口,可以避免相关技术中熔断判断条件简单造成的该熔断时不熔断,不该熔断时熔断的弊端,从而实现了降低错误执行熔断操作的效果;且可以避免由于在刚接入网络资源时,网络震荡相对较大,错误的执行熔断操作的弊端,从而实现了提高熔断的准确率的技术效果。
根据本申请实施例的另一个方面,本申请实施例还提供了一种网络资源的熔断装置,用于执行如图2至图5中任一实施例所述的网络资源的熔断方法。
请参阅图8,图8为本申请实施例的网络资源的熔断装置的示意图。
如图8所示,该装置包括:
确定模块11,用于确定起始窗口,所述起始窗口用于表征开始执行熔断条件判断的窗口;
获取模块12,用于若当前窗口达到所述起始窗口,则获取访问网络资源的相关信息;
执行模块13,用于根据所述相关信息执行熔断操作。
在一些实施例中,所述相关信息包括异常数和前周期成功率,其中,所述前周期成功率用于表征从所述起始窗口至所述当前窗口,访问网络资源的成功的概率,所述执行模块13用于,根据所述前周期成功率确定前周期异常率,若所述异常数大于预设的第一阈值,且所述前周期异常率大于预设的第二阈值,则执行熔断操作。
在一些实施例中,若所述当前窗口达到检测周期内的最后一个窗口,则所述确定模块11用于,确定所述检测周期内的异常百分比;
所述执行模块13用于,根据所述前周期异常率和所述异常百分比执行熔断操作。
在一些实施例中,所述执行模块13用于,若所述异常百分比大于预设的第三阈值,且所述前周期异常率大于所述第二阈值,则执行熔断操作。
在一些实施例中,所述获取模块12用于,若所述当前窗口达到所述起始窗口,则获取访问网络资源的总次数;
所述确定模块11用于,根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口;
所述获取模块12用于,若更新后的起始窗口超过所述当前窗口,则获取访问网络资源的相关信息。
在一些实施例中,所述确定模块11用于,根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为所述总窗口,aF为所述异常后访问放大倍数,tT为所述可容忍异常数,k为所述当前窗口,cW为所述窗口时长,sC为所述访问网络资源的总次数;
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;
若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
在一些实施例中,所述确定模块11用于,若所述当前窗口未达到检测周期内的最后一个窗口,则确定所述当前窗口内的访问次数,根据所述当前窗口内的访问次数和预设的窗口时长,确定所述当前窗口的可容忍异常数;
所述获取模块12用于,若所述当前窗口的可容忍异常数大于预设的第四阈值,则当所述前窗口达到所述起始窗口,获取访问网络资源的相关信息。
在一些实施例中,所述确定模块11用于,若所述当前窗口的可容忍异常数小于或等于所述第四阈值,则确定所述当前窗口的访问频率;
所述执行模块13用于,根据所述访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
在一些实施例中,所述确定模块11用于,确定访问次数,根据所述访问次数确定试探性尝试次数,确定所述试探性尝试次数的异常比;
所述执行模块13用于,若所述异常比大于预设的第五阈值,则执行熔断操作。
在一些实施例中,所述确定模块11用于,根据预设的提取因子从所述访问次数中提取所述试探性尝试次数。
根据本申请实施例的另一个方面,本申请实施例还提供了一种计算机存储介质,所述计算机存储介质上存储有计算机指令,当所述计算机指令在被处理器运行时,使得如图2至图5中的任一实施例被执行。
根据本申请实施例的另一个方面,本申请实施例还提供了一种计算机程序产品,当所述计算机程序产品在处理器上运行时,使得如图2至图5中的任一实施例被执行。
根据本申请实施例的另一个方面,本申请实施例还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,使得如图2至图5中的任一实施例被执行。
请参阅图9,图9为本申请实施例的电子设备的框图。
其中,电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图9所示,该电子设备包括:一个或多个处理器101、存储器102,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器101为例。
存储器102即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的网络资源的熔断方法(如图2至图5中任一实施例所示的方法)。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的网络资源的熔断方法(如图2至图5中任一实施例所示的方法)。
存储器102作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块。处理器101通过运行存储在存储器102中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的网络资源的熔断方法(如图2至图5中任一实施例所示的方法)。
存储器102可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器102可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器102可选包括相对于处理器101远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备还可以包括:输入装置103和输出装置104。处理器101、存储器102、输入装置103和输出装置104可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置103可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置104可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的另一个方面,本申请实施例还提供了一种芯片,用于执行如图2至图5中任一实施例所示的方法。
请参阅图10,图10为本申请实施例的芯片的示意图。
如图10所示,芯片包括:
输入接口31,用于接收访问网络资源的请求;
逻辑电路32,用于执行如上任一实施例所述的方法(如图2至图5中任一实施例所示的方法);
输出接口33,用于输出网络资源。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本公开实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
还应理解,在本公开各实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (21)
1.一种网络资源的熔断方法,其特征在于,所述方法包括:
确定起始窗口,所述起始窗口用于表征开始执行熔断条件判断的窗口;
对窗口进行监测,判断当前窗口是否达到所述起始窗口;
若当前窗口达到所述起始窗口,则获取访问网络资源的相关信息;
根据所述相关信息执行熔断操作;
所述若当前窗口达到所述起始窗口,则获取访问网络资源的相关信息,包括:
若所述当前窗口达到所述起始窗口,则获取访问网络资源的总次数;
根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口;
若更新后的起始窗口超过所述当前窗口,则在所述当前窗口达到所述更新后的起始窗口时,获取访问网络资源的相关信息。
2.根据权利要求1所述的方法,其特征在于,所述相关信息包括异常数和前周期成功率,其中,所述前周期成功率用于表征从所述起始窗口至所述当前窗口,访问网络资源的成功的概率,所述根据所述相关信息执行熔断操作包括:
根据所述前周期成功率确定前周期异常率;
若所述异常数大于预设的第一阈值,且所述前周期异常率大于预设的第二阈值,则执行熔断操作。
3.根据权利要求2所述的方法,其特征在于,若所述当前窗口达到检测周期内的最后一个窗口,则在所述根据所述前周期成功率确定前周期异常率之后,所述方法还包括:
确定所述检测周期内的异常百分比;
根据所述前周期异常率和所述异常百分比执行熔断操作。
4.根据权利要求3所述的方法,其特征在于,所述根据所述前周期异常率和所述异常百分比执行熔断操作包括:
若所述异常百分比大于预设的第三阈值,且所述前周期异常率大于所述第二阈值,则执行熔断操作。
5.根据权利要求1所述的方法,其特征在于,所述根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口包括:
根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为所述总窗口,aF为所述异常后访问放大倍数,tT为所述可容忍异常数,k为所述当前窗口,cW为所述窗口时长,sC为所述访问网络资源的总次数;
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;
若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
6.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
若所述当前窗口未达到检测周期内的最后一个窗口,则确定所述当前窗口内的访问次数;
根据所述当前窗口内的访问次数和预设的窗口时长,确定所述当前窗口的可容忍异常数;
若所述当前窗口的可容忍异常数大于预设的第四阈值,则当所述前窗口达到所述起始窗口,获取访问网络资源的相关信息。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述当前窗口的可容忍异常数小于或等于所述第四阈值,则确定所述当前窗口的访问频率;
根据所述访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
8.根据权利要求1至4中任一项所述的方法,其特征在于,在所述根据所述相关信息执行熔断操作之后,所述方法还包括:
确定访问次数;
根据所述访问次数确定试探性尝试次数,其中,所述试探性尝试次数用于表征从所述访问次数中选取的至少部分访问次数;
确定所述试探性尝试次数的异常比;
若所述异常比大于预设的第五阈值,则执行熔断操作。
9.根据权利要求8所述的方法,其特征在于,所述根据所述访问次数确定试探性尝试次数包括:
根据预设的提取因子从所述访问次数中提取所述试探性尝试次数。
10.一种网络资源的熔断装置,其特征在于,所述装置包括:
确定模块,用于确定起始窗口,所述起始窗口用于表征开始执行熔断条件判断的窗口;
获取模块,用于对窗口进行监测,判断当前窗口是否达到所述起始窗口;并在当前窗口达到所述起始窗口,获取访问网络资源的相关信息;
执行模块,用于根据所述相关信息执行熔断操作;
所述获取模块用于,若所述当前窗口达到所述起始窗口,则获取访问网络资源的总次数;
所述确定模块用于,根据所述当前窗口、所述访问网络资源的总次数、预设的总窗口、异常后访问放大倍数、可容忍异常数及窗口时长确定更新后的起始窗口;
所述获取模块用于,若更新后的起始窗口超过所述当前窗口,则在所述当前窗口达到所述更新后的起始窗口时,获取访问网络资源的相关信息。
11.根据权利要求10所述的装置,其特征在于,所述相关信息包括异常数和前周期成功率,其中,所述前周期成功率用于表征从所述起始窗口至所述当前窗口,访问网络资源的成功的概率,所述执行模块用于,根据所述前周期成功率确定前周期异常率,若所述异常数大于预设的第一阈值,且所述前周期异常率大于预设的第二阈值,则执行熔断操作。
12.根据权利要求11所述的装置,其特征在于,若所述当前窗口达到检测周期内的最后一个窗口,则所述确定模块用于,确定所述检测周期内的异常百分比;
所述执行模块用于,根据所述前周期异常率和所述异常百分比执行熔断操作。
13.根据权利要求12所述的装置,其特征在于,所述执行模块用于,若所述异常百分比大于预设的第三阈值,且所述前周期异常率大于所述第二阈值,则执行熔断操作。
14.根据权利要求10所述的装置,其特征在于,所述确定模块用于,根据式1确定更新后的起始窗口,式1:
n-(aF*tT*(k+1)*(k+1)*cW)/sC
其中,n为所述总窗口,aF为所述异常后访问放大倍数,tT为所述可容忍异常数,k为所述当前窗口,cW为所述窗口时长,sC为所述访问网络资源的总次数;
若式1的值小于或等于0,则将更新后的起始窗口确定为n/2;
若式1的值大于0,且小于k+1,则将更新后的起始窗口确定为k+1。
15.根据权利要求10至13中任一项所述的装置,其特征在于,所述确定模块用于,若所述当前窗口未达到检测周期内的最后一个窗口,则确定所述当前窗口内的访问次数,根据所述当前窗口内的访问次数和预设的窗口时长,确定所述当前窗口的可容忍异常数;
所述获取模块用于,若所述当前窗口的可容忍异常数大于预设的第四阈值,则当所述前窗口达到所述起始窗口,获取访问网络资源的相关信息。
16.根据权利要求15所述的装置,其特征在于,所述确定模块用于,若所述当前窗口的可容忍异常数小于或等于所述第四阈值,则确定所述当前窗口的访问频率;
所述执行模块用于,根据所述访问频率、预设的总窗口及异常后访问放大倍数执行熔断操作。
17.根据权利要求10至13中任一项所述的装置,其特征在于,所述确定模块用于,确定访问次数,根据所述访问次数确定试探性尝试次数,确定所述试探性尝试次数的异常比;
所述执行模块用于,若所述异常比大于预设的第五阈值,则执行熔断操作。
18.根据权利要求17所述的装置,其特征在于,所述确定模块用于,根据预设的提取因子从所述访问次数中提取所述试探性尝试次数。
19.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机指令,当所述计算机指令在被处理器运行时,使得权利要求1至9中任一项所述的方法被执行。
20.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,使得权利要求1至9中任一项所述的方法被执行。
21.一种芯片,其特征在于,包括:
输入接口,用于接收访问网络资源的请求;
逻辑电路,用于执行如权利要求1至9中任一项所述的方法;
输出接口,用于输出所述网络资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010400751.8A CN113676434B (zh) | 2020-05-13 | 2020-05-13 | 网络资源的熔断方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010400751.8A CN113676434B (zh) | 2020-05-13 | 2020-05-13 | 网络资源的熔断方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113676434A CN113676434A (zh) | 2021-11-19 |
CN113676434B true CN113676434B (zh) | 2023-03-24 |
Family
ID=78536821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010400751.8A Active CN113676434B (zh) | 2020-05-13 | 2020-05-13 | 网络资源的熔断方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113676434B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968761B (zh) * | 2022-04-11 | 2023-07-21 | 杭州德适生物科技有限公司 | 一种基于互联网的软件运行环境安全监管系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022028A (zh) * | 2016-11-01 | 2018-05-11 | 南京途牛科技有限公司 | 一种资源处理方法及装置 |
CN109240765A (zh) * | 2018-08-28 | 2019-01-18 | 中国联合网络通信集团有限公司 | 服务资源的熔断方法、装置、设备及计算机可读存储介质 |
CN109766210A (zh) * | 2019-01-17 | 2019-05-17 | 多点生活(成都)科技有限公司 | 服务熔断控制方法、服务熔断控制装置和服务器集群 |
CN109976935A (zh) * | 2019-03-14 | 2019-07-05 | 北京三快在线科技有限公司 | 微服务架构、微服务节点及其熔断恢复方法、装置 |
CN110187995A (zh) * | 2019-05-30 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 一种熔断对端节点的方法及熔断装置 |
CN110278227A (zh) * | 2018-03-15 | 2019-09-24 | 阿里巴巴集团控股有限公司 | 服务处理方法、装置以及电子设备 |
CN110347488A (zh) * | 2019-07-08 | 2019-10-18 | 北京字节跳动网络技术有限公司 | 一种服务处理方法、装置、终端设备及存储介质 |
CN110674060A (zh) * | 2019-09-06 | 2020-01-10 | 平安普惠企业管理有限公司 | 服务的熔断控制方法及装置 |
CN110995472A (zh) * | 2019-11-15 | 2020-04-10 | 苏州浪潮智能科技有限公司 | 一种微服务业务熔断方法和系统 |
CN111130939A (zh) * | 2019-12-26 | 2020-05-08 | 深圳前海环融联易信息科技服务有限公司 | 一种流量控制方法、装置、计算机设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140365633A1 (en) * | 2013-03-18 | 2014-12-11 | Sivatharan Natkunanathan | Networked integrated communications |
US9426197B2 (en) * | 2013-04-22 | 2016-08-23 | International Business Machines Corporation | Compile-time tuple attribute compression |
-
2020
- 2020-05-13 CN CN202010400751.8A patent/CN113676434B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022028A (zh) * | 2016-11-01 | 2018-05-11 | 南京途牛科技有限公司 | 一种资源处理方法及装置 |
CN110278227A (zh) * | 2018-03-15 | 2019-09-24 | 阿里巴巴集团控股有限公司 | 服务处理方法、装置以及电子设备 |
CN109240765A (zh) * | 2018-08-28 | 2019-01-18 | 中国联合网络通信集团有限公司 | 服务资源的熔断方法、装置、设备及计算机可读存储介质 |
CN109766210A (zh) * | 2019-01-17 | 2019-05-17 | 多点生活(成都)科技有限公司 | 服务熔断控制方法、服务熔断控制装置和服务器集群 |
CN109976935A (zh) * | 2019-03-14 | 2019-07-05 | 北京三快在线科技有限公司 | 微服务架构、微服务节点及其熔断恢复方法、装置 |
CN110187995A (zh) * | 2019-05-30 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 一种熔断对端节点的方法及熔断装置 |
CN110347488A (zh) * | 2019-07-08 | 2019-10-18 | 北京字节跳动网络技术有限公司 | 一种服务处理方法、装置、终端设备及存储介质 |
CN110674060A (zh) * | 2019-09-06 | 2020-01-10 | 平安普惠企业管理有限公司 | 服务的熔断控制方法及装置 |
CN110995472A (zh) * | 2019-11-15 | 2020-04-10 | 苏州浪潮智能科技有限公司 | 一种微服务业务熔断方法和系统 |
CN111130939A (zh) * | 2019-12-26 | 2020-05-08 | 深圳前海环融联易信息科技服务有限公司 | 一种流量控制方法、装置、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
"基于微服务架构的服务容错分析与实现";王江林等;《自动化技术与应用》;20200421;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113676434A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11307948B2 (en) | Fault injection method and apparatus, electronic device and storage medium | |
US20220115012A1 (en) | Method and apparatus for processing voices, device and computer storage medium | |
US9280451B2 (en) | Testing device | |
CN108427616B (zh) | 后台程序监控方法及监控装置 | |
CN107390983B (zh) | 业务指令执行方法、客户端和存储介质 | |
CN112567709B (zh) | 使用异常检测增强安全性 | |
JP7289334B2 (ja) | コードをテストするための方法及び装置、電子機器、記憶媒体並びにコンピュータプログラム | |
JP7258994B2 (ja) | 画面投影方法、装置、機器及び記憶媒体 | |
CN111782669B (zh) | 一种分布式锁的实现方法、装置及电子设备 | |
KR102526566B1 (ko) | 네비게이션 방법, 네비게이션 장치 및 전자 기기 | |
JP7132999B2 (ja) | アプリケーションの動作状態を検証する方法および装置 | |
CN114024884B (zh) | 一种测试方法、装置、电子设备及存储介质 | |
US20210350805A1 (en) | Method, apparatus, device and computer storage medium for processing voices | |
CN111241396B (zh) | 信息推送的方法和装置、电子设备、存储介质 | |
CN112511505A (zh) | 一种鉴权系统、方法、装置、设备和介质 | |
CN113676434B (zh) | 网络资源的熔断方法、装置、电子设备及存储介质 | |
CN111611767A (zh) | 验证方法和装置 | |
CN111953647B (zh) | 安全校验方法、装置、电子设备和存储介质 | |
US20200201720A1 (en) | Method and apparatus for generating log data having increased filterability | |
CN112559084B (zh) | 用于治理服务的方法、装置、设备、存储介质及程序产品 | |
CN111338937B (zh) | 一种对小程序干预下线的方法、装置、设备和介质 | |
CN111522599B (zh) | 用于发送信息的方法和装置 | |
CN113900910A (zh) | 应用程序监控方法、装置、存储介质和电子设备 | |
CN111835857B (zh) | 用于访问数据的方法和装置 | |
CN111581071B (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231226 Address after: 518054 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Patentee after: Huaban Payment (Shenzhen) Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |