一种熔断降级的触发方法、系统和存储介质技术方案

技术编号:27568322 阅读:19 留言:0更新日期:2021-03-09 22:14
本发明专利技术实施例公开了一种熔断降级的触发方法、系统和存储介质,该方法包括:管控服务器获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息;管控服务器根据应用业务对应的预设熔断降级配置信息和性能参数信息,生成业务服务器对应的目标熔断降级触发指令;管控服务器发送目标熔断降级触发指令,以触发业务服务器执行与目标熔断降级触发指令所对应的熔断降级操作。通过本发明专利技术实施例的技术方案,可以实现熔断降级操作的自动触发和执行,提高资源利用率。提高资源利用率。提高资源利用率。

【技术实现步骤摘要】
一种熔断降级的触发方法、系统和存储介质


[0001]本专利技术实施例涉及计算机技术,尤其涉及一种熔断降级的触发方法、系统和存储介质。

技术介绍

[0002]在大型互联网应用或高流量应用中,应用系统往往采用分布式服务实现各个应用业务对应的功能,从而可以通过调用不同的应用业务来实现整个业务线流程。例如,在电商领域中,整个下单流程往往需要调用多个应用业务,比如订单业务,第三方商家业务,物流业务等。然而,在上游应用业务调用下游应用业务时,若下游应用业务一直未响应,则上游应用业务便会一直占用线程等待响应,从而导致上游应用业务的其它接口或逻辑一直等待线程的释放,进而导致上游应用业务的可用性大大降低。而且当上游应用业务一直频繁重复调用下游应用业务时,下游应用业务的应用线程便会被上游应用业务频繁的调用占用,导致下游应用业务无法提供给其他业务稳定可用的服务。
[0003]针对于此,通过对各个应用业务设置熔断降级的方式进行处理,比如线程池隔离方式等,从而提高各个应用业务的可用性和稳定性,保证系统的柔性可用,避免引起雪崩效应。现有技术中,通常采样Netflix的开源组件Hystrix进行线程池隔离降级。在Hystrix框架中是将应用业务预先设置为线程池隔离的方式,比如为交易业务中的下单子业务和订单查询子业务分别设置两个独立的线程池,使得不同的子业务使用不同的线程池,避免线程相互影响。
[0004]然而,在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0005]由于现有的线程池隔离方式是在服务器运行前便进行了线程池隔离降级,从而在服务器性能良好时也需要进行不必要的线程池隔离降级,导致了资源浪费,降低了资源利用率。

技术实现思路

[0006]本专利技术实施例提供了一种熔断降级的触发方法、系统和存储介质,以实现熔断降级操作的自动触发和执行,提高资源利用率。
[0007]第一方面,本专利技术实施例提供了一种熔断降级的触发方法,包括:
[0008]管控服务器获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息;
[0009]所述管控服务器根据所述应用业务对应的预设熔断降级配置信息和所述性能参数信息,生成所述业务服务器对应的目标熔断降级触发指令;
[0010]所述管控服务器发送所述目标熔断降级触发指令,以触发所述业务服务器执行与所述目标熔断降级触发指令所对应的熔断降级操作。
[0011]第二方面,本专利技术实施例还提供了一种熔断降级的触发系统,包括:管控服务器和业务服务器集群;
[0012]其中,所述管控服务器用于获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息;根据所述应用业务对应的预设熔断降级配置信息和各所述性能参数信息,确定所述应用业务对应的目标熔断降级触发指令;发送所述目标熔断降级触发指令;
[0013]所述业务服务器集群用于在接收到所述目标熔断降级触发指令时,触发并执行与所述目标熔断降级触发指令所对应的熔断降级操作。
[0014]第三方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任意实施例所提供的熔断降级的触发方法。
[0015]上述专利技术中的实施例具有如下优点或有益效果:
[0016]通过设置一个额外的管控服务器来监控业务服务器集群中的每个业务服务器的性能参数信息,并根据预先配置的预设熔断降级配置信息和获取的性能参数信息来确定业务服务器是否需要进行熔断降级操作,若是,则生成业务服务器对应的目标熔断降级触发指令,并将该目标熔断降级触发指令发送至业务服务器中,从而业务服务器在接到目标熔断降级触发指令时,可以自动触发和执行与目标熔断降级触发指令所对应的熔断降级操作,比如线程池隔离降级操作,从而可以实现熔断降级操作的自动触发和执行,无需预先进行设置,避免执行不必要的熔断降级操作,大大提高了资源利用率。
附图说明
[0017]图1是本专利技术实施例一提供的一种熔断降级的触发方法的流程图;
[0018]图2是本专利技术实施例一所涉及的一种熔断降级的触发框架的示例;
[0019]图3是本专利技术实施例一所涉及的一种协同服务器的数据存储结构的示例;
[0020]图4是本专利技术实施例二提供的一种熔断降级的触发方法的流程图;
[0021]图5是本专利技术实施例三提供的一种熔断降级的触发系统的结构示意图;
[0022]图6是本专利技术实施例四所涉及的一种熔断降级的触发系统的运行示例。
具体实施方式
[0023]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0024]实施例一
[0025]图1为本专利技术实施例一提供的一种熔断降级的触发方法的流程图,本实施例可适用于自动触发业务服务器中的熔断降级操作。该方法可以由熔断降级的触发装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于管控服务器中。该方法具体包括以下步骤:
[0026]S110、管控服务器获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息。
[0027]其中,应用业务可以是指用于实现某个应用服务的业务线流程中的任意一个业务功能。业务服务器集群可以是由执行应用业务的多个业务服务器组成,其中每个业务服务器均搭载有相应的应用业务对应的业务系统,以独立实现相应的应用业务的功能。本实施例中的应用业务可以为多个,并且各个应用业务可以进行分布式存储,即每个应用业务对
应一个独立的业务服务器集群,以便利用每个业务服务器集群执行相应的应用业务的功能,实现分布式服务。性能参数信息可以是指用于衡量业务服务器在运行过程中的性能指标以及应用业务维度的参数,其可以包括但不限于CPU(Central Processing Unit,中央处理器)使用率、内存使用率、QPS(Query Per Second,每秒查询率)、调用成功率、调用失败率和访问频率。管控服务器可以是指用于对各个业务服务器进行管理和监控的服务器。本实施例中的管控服务器可以是一个或多个,以便对所有应用业务对应的业务服务器集群进行高效管控。
[0028]具体地,本实施例可以预先将待管控的各个应用业务所对应的业务服务器集群与管控服务器进行连接,以便管控服务器可以获得每个业务服务器的性能参数信息。示例性地,性能参数信息的获取方式可以是管控服务器通过每个业务服务器提供的RPC(Remote Procedure Call,远程过程调用)接口或者HTTP(HyperText Transfer Protocol,超文本传输协议)接口,定时上报或者拉取获取业务服务器的性能参数信息;也可以是每个业务服务器与管控服务器进行Socket网络连接,使得管控服务器获得性能参数信息;还可以是业务服务器通过向管控服务器发送MQ(Message Queue)消息通知,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种熔断降级的触发方法,其特征在于,包括:管控服务器获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息;所述管控服务器根据所述应用业务对应的预设熔断降级配置信息和所述性能参数信息,生成所述业务服务器对应的目标熔断降级触发指令;所述管控服务器发送所述目标熔断降级触发指令,以触发所述业务服务器执行与所述目标熔断降级触发指令所对应的熔断降级操作。2.根据权利要求1所述的方法,其特征在于,所述管控服务器根据所述应用业务对应的预设熔断降级配置信息和所述性能参数信息,生成所述业务服务器对应的目标熔断降级触发指令,包括:所述管控服务器根据协调服务器存储的所述应用业务对应的预设熔断降级配置信息和所述性能参数信息,生成所述业务服务器对应的目标熔断降级触发指令;相应地,所述管控服务器发送所述目标熔断降级触发指令,以触发所述业务服务器执行与所述目标熔断触发指令所对应的熔断降级操作,包括:所述管控服务器将所述目标熔断降级触发指令存储至所述协调服务器中所述应用业务对应的目标位置处,以使各个所述业务服务器在检测到所述目标位置处存储有所述目标熔断降级触发指令时,执行与所述目标熔断触发指令所对应的熔断降级操作。3.根据权利要求2所述的方法,其特征在于,在管控服务器获取应用业务对应的业务服务器集群中每个业务服务器的性能参数信息之前,还包括:所述管控服务器获取所述应用业务对应的预设熔断降级配置信息;所述管控服务器控制所述协调服务器创建所述应用业务对应的配置信息存储结点和触发信息存储结点,并将所述预设熔断降级配置信息存储至所述配置信息存储结点中;其中,所述触发信息存储结点包括多个第一触发子结点;所述第一触发子结点是所述业务服务器在启动时控制所述协调服务器创建的,用于存储该所述业务服务器的IP地址。4.根据权利要求3所述的方法,其特征在于,所述预设熔断降级配置信息包括熔断配置信息、线程池隔离配置信息和访问限流配置信息;所述配置信息存储结点包括第一配置子结点、第二配置子结点、第三配置子结点;相应地,将所述预设熔断降级配置信息存储至所述配置信息存储结点中,包括:将所述应用业务对应的所述熔断配置信息存储至所述第一配置子结点中;将所述应用业务对应的所述线程池隔离配置信息存储至所述第二配置子结点中;将所述应用业务对应的所述访问限流配置信息存储至所述第三配置子结点中。5.根据权利要求2所述的方法,其特征在于,所述管控服务器根据协调服务器存储的所述应用业务对应的预设熔断降级配置信息和所述性能参数信息,生成所述业务服务器对应的目标熔断降级触发指令,包括:所述管控服务器根据各个所述业务服务器的所述性能参数信息,确定每种熔断降级方式对应的指标值;所述管控服务器根据协调服务器存储的每种所述熔断降级方式对应的预设阈值配置信息和所述指标值,确定所述应用业务对应的至少一个目标熔断降级方式,并根据所述目标熔断降级方式生成相应的目标熔断降级触发指令。6.根据权利要求5所述的方法,其特征在于,所述管控服务器根据各个所述业务服务器
的所述性能参数信息,确定每种熔断降级方式对应的指标值,包括:所述管控服务器根据每个所述业务服务器的中央服务器CPU使用率、内存使用率和调用成功率确定在线程池隔离降级方式下每个所述业务服务器对应的第一指标值;所述管控服务器对每个所述业务服务器的调用失败率进行统计,确定超时熔断方式对应的第二指标值;所述管...

【专利技术属性】
技术研发人员:王亚洲
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1