CN110704220B - 一种熔断参数的调整方法、装置及设备 - Google Patents

一种熔断参数的调整方法、装置及设备 Download PDF

Info

Publication number
CN110704220B
CN110704220B CN201910823021.6A CN201910823021A CN110704220B CN 110704220 B CN110704220 B CN 110704220B CN 201910823021 A CN201910823021 A CN 201910823021A CN 110704220 B CN110704220 B CN 110704220B
Authority
CN
China
Prior art keywords
interface
host
fusing
resource information
parameter
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
Application number
CN201910823021.6A
Other languages
English (en)
Other versions
CN110704220A (zh
Inventor
赵研
崔朝辉
赵立军
张霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Neusoft Corp
Original Assignee
Neusoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Neusoft Corp filed Critical Neusoft Corp
Priority to CN201910823021.6A priority Critical patent/CN110704220B/zh
Publication of CN110704220A publication Critical patent/CN110704220A/zh
Application granted granted Critical
Publication of CN110704220B publication Critical patent/CN110704220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy

Abstract

本申请公开一种熔断参数的调整方法、装置及设备,所述方法应用于第一接口,第一接口为目标服务中配置有熔断功能的接口,方法包括:获取目标服务所在主机的剩余资源信息,以及第一接口所依赖的组件所在主机的剩余资源信息;基于目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;调整后的熔断参数与目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。本申请能够根据第一接口所在主机以及其所依赖的主机的剩余资源信息,调整熔断参数,使得基于该熔断参数进行熔断的目标服务能够最大化的发挥自身的处理能力。

Description

一种熔断参数的调整方法、装置及设备
技术领域
本申请涉及数据处理领域,具体涉及一种熔断参数的调整方法、装置及设备。
背景技术
熔断本质上是一种过载保护机制,如果某个目标服务调用慢或者有大量超时,则熔断目标服务的调用,即对于后续针对该目标服务的调用请求,直接返回调用失败,以快速释放资源。如果目标服务情况好转则恢复调用。
熔断参数用于确定熔断目标服务调用的时机,也就是说,当满足熔断参数时,则熔断目标服务的调用。因此,在熔断这一机制中熔断参数起着重要的作用。
目前,熔断参数为提前写入目标服务的固定值,即在目标服务运行的过程中该熔断参数固定不变。但是,目标服务的处理能力并非一直不变,显然基于固定的熔断参数对目标服务进行熔断,可能影响目标服务的处理能力的发挥。
发明内容
有鉴于此,本申请提供了一种熔断参数的确定方法、装置及设备,能够基于外部环境动态调整熔断参数,保证目标服务的处理能力得到发挥。
第一方面,为实现上述发明目的,本申请提供了一种熔断参数的调整方法,所述方法应用于第一接口,所述第一接口为目标服务中配置有熔断功能的接口,所述方法包括:
获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务;
基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;其中,所述调整后的熔断参数与所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
一种可选的实施方式中,所述基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数,包括:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述方法还包括:
统计所述第一接口在预设时间段内的正常运行时间和超时及错误的响应个数;
基于所述正常运行时间和所述超时及错误的响应个数,更新所述第一接口的预设的运行状况参数,得到更新后的运行状况参数;其中,所述更新后的运行状况参数与所述正常运行时间为正相关关系,所述更新后的运行状况参数与所述超时及错误的响应个数为负相关关系;
相应的,基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数,具体为:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数,包括:
利用以下公式对预设的熔断参数进行调整,得到调整后的熔断参数;
Figure BDA0002188168700000021
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值。
第二方面,本申请还提供了一种熔断参数的调整装置,所述装置应用于第一接口,所述第一接口为目标服务中配置有熔断功能的接口,所述装置包括:
第一获取模块,用于获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务;
调整模块,用于基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;其中,所述调整后的熔断参数与所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
一种可选的实施方式中,所述调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述装置还包括:
统计模块,用于统计所述第一接口在预设时间段内的正常运行时间和超时及错误的响应个数;
更新模块,用于基于所述正常运行时间和所述超时及错误的响应个数,更新所述第一接口的预设的运行状况参数,得到更新后的运行状况参数;其中,所述更新后的运行状况参数与所述正常运行时间为正相关关系,所述更新后的运行状况参数与所述超时及错误的响应个数为负相关关系;
相应的,调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述调整模块,具体用于:
利用以下公式对预设的熔断参数进行调整,得到调整后的熔断参数;
Figure BDA0002188168700000041
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值。
第三方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上述任一项所述的方法。
第四方面,本申请还提供了一种熔断参数的调整设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述任一项所述的方法。
本申请提供的熔断参数的调整方法中,基于目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数,以便第一接口后续基于该调整后的熔断参数进行熔断。显然,本申请能够根据第一接口所在主机以及其所依赖的主机的剩余资源信息,调整熔断参数,使得基于该熔断参数进行熔断的目标服务能够最大化的发挥自身的处理能力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种熔断参数的调整方法的流程图;
图2为本申请实施例提供的一种微服务架构示意图;
图3为本申请实施例提供的另一种熔断参数的调整方法的流程图;
图4为本申请实施例提供的一种熔断参数的调整装置的结构示意图;
图5为本申请实施例提供的一种熔断参数的调整设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,配置有熔断功能的接口在预设时间内接收到预设个数的请求时,关闭该接口,以拒绝继续接收请求,从而避免过多的请求堵塞该接口。以上即为熔断机制,其中,熔断参数用于决定接口关闭的时机。也就是说,当配置有熔断功能的接口确定当前满足熔断参数时关闭接口。显然,熔断参数的设置为熔断机制的关键。
一种实现方式中,熔断参数为预先写入配置有熔断功能的接口中的固定值。也就是说,无论该接口的处理能力如何,该接口进行熔断的时机不变。但是,事实上熔断时机是可以随着接口的处理能力变化的。
因此,本申请提供了一种熔断参数的调整方法,具体的,基于目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数,以便第一接口后续基于该调整后的熔断参数进行熔断。显然,本申请能够根据第一接口所在主机以及其所依赖的主机的剩余资源信息,调整熔断参数,使得基于该熔断参数进行熔断的目标服务能够最大化的发挥自身的处理能力。
以下为本申请实施例提供的一种熔断参数的调整方法,具体的,该方法应用于目标服务中配置有熔断功能的接口,以下称为第一接口。参考图1,为本申请实施例提供的一种熔断参数的调整方法的流程图,该方法包括:
S101:获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务。
熔断功能可以理解为,配置有熔断功能的接口在接收到的请求个数符合熔断参数时,停止接收后续请求,以使该接口对应的目标服务有时间处理已接收到的请求,避免过多未被处理的请求造成阻塞,影响部署有该目标服务的主机的系统整体性能。
熔断参数可以理解为,配置有熔断功能的接口在预设时间段内允许接收的请求个数。例如,配置有熔断功能的第一接口的熔断参数为20个/10秒,则表示第一接口在10秒内允许接收到20个请求,一旦第一接口在10秒内接收到的请求个数超过20个,则第一接口停止接收后续请求,实现熔断。
实际应用中,配置有熔断功能的接口对应的熔断参数与该接口对应的目标服务的请求处理能力有关。也就是说,目标服务的请求处理能力越强,则接口对应的熔断参数越大。而目标服务的请求处理能力与配置有熔断功能的接口所依赖的组件的请求处理能力有关,实际应用中,该接口所依赖的组件也会参与目标服务对请求的处理,因此,接口对应的熔断参数不仅与目标服务的请求处理能力有关,也与该接口所依赖的组件的请求处理能力有关。
为了使得配置有熔断功能的接口对应的熔断参数能够最大化体现该接口对应的目标服务以及其所依赖的组件的请求处理能力,本申请实施例综合考虑该接口对应的目标服务以及其所依赖的组件的请求处理能力后,调整该接口对应的熔断参数。
具体的,由于目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息等能够体现目标服务的请求处理能力,因此,本申请实施例可以获取目标服务所在主机的剩余资源信息。其中,剩余资源信息可以包括可用CPU信息、可用内存信息和可用宽带信息。
一种实现方式中,可用CPU信息可以为剩余CPU资源占总CPU资源的百分比,可用内存信息可以为剩余内存资源占总内存资源的百分比,以及可用宽带信息可以为剩余宽带资源占总宽带资源的百分比。
另外,由于配置有熔断功能的接口所依赖的组件所在主机的可用CPU信息、可用内存信息和可用宽带信息等能够体现该组件的请求处理能力,因此,本申请实施例还可以获取第一接口所依赖的组件所在主机的剩余资源信息。其中,第一接口所依赖的组件可以包括数据库、中间件(如MQ)、服务等。
一种可选的实施方式中,可以周期性的获取目标服务所在主机的剩余资源信息,以及第一接口所依赖的组件所在主机的剩余资源信息,以实现动态调整熔断参数。具体的,执行本申请实施例提供的熔断参数调整方法的周期可以为10秒左右。
S102:基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数。
本申请实施例中,第一接口在获取到目标服务所在主机以及自身所依赖的组件所在主机的剩余资源信息后,基于获取到的剩余资源信息对预设的熔断参数进行调整,得到调整后的熔断参数,用于实现第一接口配置的熔断功能。其中,预设的熔断参数为初始化阶段预先设置的熔断参数,通常为根据用户经验进行设置的。
可以理解的是,主机的剩余资源信息越多,则其处理能力越强。本申请实施例中,目标服务所在主机的剩余资源信息越多,说明目标服务的请求处理能力越强,则得到的调整后的熔断参数越大;同样的,第一接口所依赖的组件所在主机的剩余资源信息越多,说明组件的请求处理能力越强,则得到的调整后的熔断参数越大。因此,可以总结为,本申请实施例中得到的调整后的熔断参数与目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
一种可选的实施方式中,可以利用公式(1)对预设的熔断参数进行调整,得到调整后的熔断参数,具体的:
Figure BDA0002188168700000071
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值,可以根据经验设置,用于表示在各个主机没有剩余资源时熔断参数可以设置的最小值。例如,假设D取值为0.6,则表示的各个主机均没有剩余资源时熔断参数可以调整为预设的熔断参数的60%。
值得注意的是,由于计算机系统处理整数比处理小数更准确,因此,为了使得利用公式(1)计算得到的熔断参数更精确,本申请实施例的公式(1)中的A、B、C、Ai、Bi、Ci分别为占对应总资源百分比的分母部分,例如,假设目标服务所在主机的可用CPU信息为80%,则A为80;假设第一接口所依赖的第i个组件所在主机的可用内存信息为70%,则Bi为70。
另外,第一接口的运行状况也能够反映目标服务的请求处理能力,例如第一接口处于正常运行的时间越长,则说明当前的目标服务的请求处理能力越强,第一接口发送的超时或错误响应越多,则说明当前的目标服务的请求处理能力越差。因此,本申请实施例还可以结合第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实现方式中,基于目标服务所在主机的剩余资源信息、第一接口所依赖的组件所在主机的剩余资源信息以及第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。对于获取目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息的方式可参照上述实施方式进行理解,在此不再赘述。
本申请实施例可以利用第一接口的运行状况参数表示第一接口的运行状况,其中,第一接口的运行状况参数可以由第一接口在预设时间段内的正常运行时间和超时及错误的响应个数体现。具体的,第一接口在预设时间段内的正常运行时间越长,则说明第一接口的运行状况越好,进而对于请求的处理能力越强,熔断参数可以设置的越大;相反的,第一接口在预设时间段内的超时及错误的响应个数越多,则说明第一接口的运行状况越差,进而对于请求的处理能力越弱,熔断参数可以设置的越小。也就是说,更新后的运行状况参数与正常运行时间为正相关关系,以及更新后的运行状况参数与超时及错误的响应个数为负相关关系。
一种可选的实现方式中,第一接口在预设时间段内的正常运行时间每达到预设第一阈值时,第一接口的运行状况参数加1;同样的,第一接口在预设时间段内的超时及错误的响应个数每达到预设第二阈值时,第一接口的运行状况参数减1。例如,预设第一阈值可以为300,预设第二阈值可以为10。
实际应用中,可以统计第一接口在预设时间段内的正常运行时间和超时及错误的响应个数,然后基于统计得到的正常运行时间和超时及错误的响应个数,更新第一接口的预设的运行状况参数,得到更新后的运行状况参数。在对熔断参数进行调整的过程中,可以基于目标服务所在主机的剩余资源信息、第一接口所依赖的组件所在主机的剩余资源信息以及更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
本申请实施例可以基于目标服务所在主机的剩余资源信息、第一接口所依赖的组件所在主机的剩余资源信息以及更新后的第一接口的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。具体可以利用以下公式(2)实现:
Figure BDA0002188168700000091
其中,公式(2)中的各个参数与公式(1)中的各个参数含义相同,另外,var表示更新后的运行状况参数。
由于上述实施方式中,调整熔断参数不仅基于目标服务所在主机的剩余资源信息、第一接口所依赖的组件所在主机的剩余资源信息,还结合了更新后的运行状况参数的影响,因此,本申请实施例提供的熔断参数的调整方法能够得到更准确的调整后的熔断参数,使得基于该调整后的熔断参数实现的熔断更能够体现能够最大化体现该接口对应的目标服务以及其所依赖的组件的请求处理能力。
本申请实施例提供的熔断参数的调整方法可以应用于各种应用场景中,以下以将该方法应用于微服务架构为例。微服务是当前一种非常流行的服务端分布式架构方案,使用微服务架构可以提升开发效率、解耦,可以更好的满足用户非功能性需求。
参考图2,为一种微服务架构示意图,其中,服务1中的第一接口配置有熔断功能,服务1的第一接口依赖的组件包括mysql、rabbitmq和服务2,为此,本申请实施例不仅需要获取服务1所在主机的剩余资源信息,还需要获取mysql、rabbitmq和服务2分别所在主机的剩余资源信息,最终,基于服务1所在主机的剩余资源信息、mysql、rabbitmq和服务2分别所在主机的剩余资源信息以及第一接口的更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数,用于对服务1的第一接口的熔断功能。
参考图3,为针对上述应用场景提供的一种熔断参数的调整方法的流程图,在该应用场景下可以动态调整熔断参数,例如,通过设置执行该熔断参数的调整方法的执行周期(如10秒),实现动态调整熔断参数,具体包括:
S301:实时统计第一接口在预设时间段内的正常运行时间和超时及错误的响应个数。
S302:基于所述正常运行时间和所述超时及错误的响应个数,更新第一接口的预设的运行状况参数,得到更新后的运行状况参数。
一种可选的实现方式中,当确定统计得到的正常运行时间每达到预设第一阈值时,将第一接口的预设的运行状况参数加1;当确定统计得到的超时及错误的响应个数每达到预设第二阈值时,将第一接口的预设的运行状况参数减1。
S303:获取服务1所在主机的剩余资源信息。
S304:获取mysql、rabbitmq和服务2分别所在主机的剩余资源信息剩余资源信息。
S305:基于服务1所在主机的剩余资源信息、mysql、rabbitmq和服务2分别所在主机的剩余资源信息剩余资源信息以及更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
S306:利用调整后的熔断参数更新第一接口的熔断参数,并在预设的执行周期达到时,再次触发执行熔断参数的调整方法。
上述各个步骤可以参照上述实施例中的S101和S102进行理解,在此不再赘述。
基于上述方法实施例的介绍,本申请还提供了一种熔断参数的调整装置,参考图4,为本申请实施例提供的一种熔断参数的调整装置的结构示意图,所述装置应用于第一接口,所述第一接口为目标服务中配置有熔断功能的接口,所述装置包括:
第一获取模块401,用于获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务;
调整模块402,用于基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;其中,所述调整后的熔断参数与所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
一种可选的实施方式中,所述调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述装置还包括:
统计模块,用于统计所述第一接口在预设时间段内的正常运行时间和超时及错误的响应个数;
更新模块,用于基于所述正常运行时间和所述超时及错误的响应个数,更新所述第一接口的预设的运行状况参数,得到更新后的运行状况参数;其中,所述更新后的运行状况参数与所述正常运行时间为正相关关系,所述更新后的运行状况参数与所述超时及错误的响应个数为负相关关系;
相应的,调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
一种可选的实施方式中,所述调整模块,具体用于:
利用以下公式对预设的熔断参数进行调整,得到调整后的熔断参数;
Figure BDA0002188168700000121
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值。
本申请提供的熔断参数的调整装置中,基于目标服务所在主机的剩余资源信息和第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数,以便第一接口后续基于该调整后的熔断参数进行熔断。显然,本申请能够根据第一接口所在主机以及其所依赖的主机的剩余资源信息,调整熔断参数,使得基于该熔断参数进行熔断的目标服务能够最大化的发挥自身的处理能力。
另外,本申请实施例还提供了一种熔断参数的调整设备,参见图5所示,可以包括:
处理器501、存储器502、输入装置503和输出装置504。熔断参数的调整设备中的处理器501的数量可以一个或多个,图5中以一个处理器为例。在本发明的一些实施例中,处理器501、存储器502、输入装置503和输出装置504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行熔断参数的调整设备的各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置503可用于接收输入的数字或字符信息,以及产生与熔断参数的调整设备的用户设置以及功能控制有关的信号输入。
具体在本实施例中,处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现上述熔断参数的调整方法中的各种功能。
另外,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述的熔断参数的调整方法。
可以理解的是,对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请实施例所提供的一种熔断参数的调整方法、装置及设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种熔断参数的调整方法,其特征在于,所述方法应用于第一接口,所述第一接口为目标服务中配置有熔断功能的接口,所述方法包括:
获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务;
基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;其中,所述调整后的熔断参数与所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数,包括:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
统计所述第一接口在预设时间段内的正常运行时间和超时及错误的响应个数;
基于所述正常运行时间和所述超时及错误的响应个数,更新所述第一接口的预设的运行状况参数,得到更新后的运行状况参数;其中,所述更新后的运行状况参数与所述正常运行时间为正相关关系,所述更新后的运行状况参数与所述超时及错误的响应个数为负相关关系;
相应的,基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数,具体为:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
4.根据权利要求3所述的方法,其特征在于,所述基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数,包括:
Figure FDA0003956634570000021
利用以下公式对预设的熔断参数进行调整,得到调整后的熔断参数;
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值,var表示更新后的运行状况参数。
5.一种熔断参数的调整装置,其特征在于,所述装置应用于第一接口,所述第一接口为目标服务中配置有熔断功能的接口,所述装置包括:
第一获取模块,用于获取所述目标服务所在主机的剩余资源信息,以及所述第一接口所依赖的组件所在主机的剩余资源信息;其中,所述剩余资源信息包括可用CPU信息、可用内存信息和可用宽带信息,所述组件包括数据库、中间件和\或服务;
调整模块,用于基于所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息,对预设的熔断参数进行调整,得到调整后的熔断参数;其中,所述调整后的熔断参数与所述目标服务所在主机的剩余资源信息和所述第一接口所依赖的组件所在主机的剩余资源信息均为正相关关系。
6.根据权利要求5所述的装置,其特征在于,所述调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述第一接口的运行状况,对预设的熔断参数进行调整,得到调整后的熔断参数。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
统计模块,用于统计所述第一接口在预设时间段内的正常运行时间和超时及错误的响应个数;
更新模块,用于基于所述正常运行时间和所述超时及错误的响应个数,更新所述第一接口的预设的运行状况参数,得到更新后的运行状况参数;其中,所述更新后的运行状况参数与所述正常运行时间为正相关关系,所述更新后的运行状况参数与所述超时及错误的响应个数为负相关关系;
相应的,调整模块,具体用于:
基于所述目标服务所在主机的剩余资源信息、所述第一接口所依赖的组件所在主机的剩余资源信息以及所述更新后的运行状况参数,对预设的熔断参数进行调整,得到调整后的熔断参数。
8.根据权利要求7所述的装置,其特征在于,所述调整模块,具体用于:
利用以下公式对预设的熔断参数进行调整,得到调整后的熔断参数;
Figure FDA0003956634570000031
其中,R表示调整后的熔断参数;A、B、C分别表示目标服务所在主机的可用CPU信息、可用内存信息和可用宽带信息;n表示第一接口所依赖的组件的个数;Ai、Bi、Ci分别表示第一接口所依赖的第i个组件所在主机的可用CPU信息、可用内存信息和可用宽带信息;seed表示预设的熔断参数;D为预设的恒定值,var表示更新后的运行状况参数。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-4任一项所述的方法。
10.一种熔断参数的调整设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-4任一项所述的方法。
CN201910823021.6A 2019-09-02 2019-09-02 一种熔断参数的调整方法、装置及设备 Active CN110704220B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910823021.6A CN110704220B (zh) 2019-09-02 2019-09-02 一种熔断参数的调整方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910823021.6A CN110704220B (zh) 2019-09-02 2019-09-02 一种熔断参数的调整方法、装置及设备

Publications (2)

Publication Number Publication Date
CN110704220A CN110704220A (zh) 2020-01-17
CN110704220B true CN110704220B (zh) 2023-03-24

Family

ID=69194306

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910823021.6A Active CN110704220B (zh) 2019-09-02 2019-09-02 一种熔断参数的调整方法、装置及设备

Country Status (1)

Country Link
CN (1) CN110704220B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111770134B (zh) * 2020-05-25 2024-03-29 国电南瑞科技股份有限公司 一种基于服务质量的服务熔断方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776099A (zh) * 2017-01-11 2017-05-31 北京皮尔布莱尼软件有限公司 一种服务熔断隔离系统和方法
CN107026839A (zh) * 2016-11-16 2017-08-08 阿里巴巴集团控股有限公司 一种攻击请求处理方法和装置
CN107608812A (zh) * 2017-09-08 2018-01-19 北京奇艺世纪科技有限公司 一种熔断方法和服务器
CN108427581A (zh) * 2018-02-07 2018-08-21 平安普惠企业管理有限公司 系统微服务化方法及终端设备
CN109240765A (zh) * 2018-08-28 2019-01-18 中国联合网络通信集团有限公司 服务资源的熔断方法、装置、设备及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9871857B2 (en) * 2015-04-29 2018-01-16 Microsoft Technology Licensing, Llc Optimal allocation of dynamic cloud computing platform resources

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107026839A (zh) * 2016-11-16 2017-08-08 阿里巴巴集团控股有限公司 一种攻击请求处理方法和装置
CN106776099A (zh) * 2017-01-11 2017-05-31 北京皮尔布莱尼软件有限公司 一种服务熔断隔离系统和方法
CN107608812A (zh) * 2017-09-08 2018-01-19 北京奇艺世纪科技有限公司 一种熔断方法和服务器
CN108427581A (zh) * 2018-02-07 2018-08-21 平安普惠企业管理有限公司 系统微服务化方法及终端设备
CN109240765A (zh) * 2018-08-28 2019-01-18 中国联合网络通信集团有限公司 服务资源的熔断方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN110704220A (zh) 2020-01-17

Similar Documents

Publication Publication Date Title
CN110535777B (zh) 访问请求控制方法、装置、电子设备以及可读存储介质
CN107391317B (zh) 一种数据恢复的方法、装置、设备及计算机可读存储介质
US11095531B2 (en) Service-aware serverless cloud computing system
CN110933178B (zh) 调整集群系统内的节点配置的方法及服务器
CN111562884B (zh) 一种数据存储方法、装置及电子设备
CN110704220B (zh) 一种熔断参数的调整方法、装置及设备
CN113660173A (zh) 一种流量控制方法、装置、计算机设备及存储介质
CN111538572A (zh) 任务处理方法、装置、调度服务器及介质
US20220188156A1 (en) Method and apparatus for determining hardware usage, storage medium, and electronic device
US11822961B2 (en) Method and apparatus for data processing, server and storage medium
CN107783825B (zh) 移动终端多后台进程启动方法、装置及移动终端
US9501321B1 (en) Weighted service requests throttling
CN110209548B (zh) 服务控制方法、系统、电子设备及计算机可读存储介质
CN111052072B (zh) 一种免安装应用程序下载方法及装置
CN112286622A (zh) 虚机迁移处理及策略生成方法、装置、设备及存储介质
CN116192759A (zh) 数据传输量的调整方法、装置、电子设备及存储介质
CN115941758A (zh) 基于动态规划的云服务控制台部署方法、系统及存储介质
CN113596149A (zh) 流量控制方法、装置、设备及存储介质
US20180285168A1 (en) Information processing apparatus and information processing system
US11500676B2 (en) Information processing apparatus, method, and non-transitory computer-readable storage medium
US11418417B2 (en) Managing stateful workloads executing on temporarily available resources of a cloud computing system
CN110929102B (zh) 一种数据处理方法、装置及电子设备
CN114546279B (zh) Io请求预测方法、装置、存储节点及可读存储介质
US11635982B2 (en) Information processing apparatus, program, and information processing system
US20220413996A1 (en) Computer-readable recording medium storing acceleration test program, acceleration test method, and acceleration test apparatus

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