CN110460639A - 服务器集群的熔断处理方法、装置及系统 - Google Patents
服务器集群的熔断处理方法、装置及系统 Download PDFInfo
- Publication number
- CN110460639A CN110460639A CN201910629349.4A CN201910629349A CN110460639A CN 110460639 A CN110460639 A CN 110460639A CN 201910629349 A CN201910629349 A CN 201910629349A CN 110460639 A CN110460639 A CN 110460639A
- Authority
- CN
- China
- Prior art keywords
- server
- statistical result
- cluster
- service request
- target device
- 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
Classifications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本说明书提供一种服务器集群的熔断处理方法、装置及系统,其中,服务器在处理服务请求后会获得处理结果,由每台服务器对自身的处理结果进行统计,从而可达到实时快速统计的目的;各台服务器按照第一时间周期将本地统计结果发送给所述目标设备,以使目标设备可确定集群统计结果,之后,各台服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。本实施例通过对第一时间周期和第二时间周期的配置,以及由服务器实时统计的方式,可以实现快速的异常监测,可以及时地对异常业务进行熔断处理。
Description
技术领域
本说明书涉及计算机技术领域,尤其涉及服务器集群的熔断处理方法、装置及系统。
背景技术
大型企业的业务系统往往面临着巨大的流量压力,业务系统提供的一项业务往往涉及多个服务,这个过程中任何一个服务发生异常都可能导致业务的中断,若发生异常时仍然有大流量不断冲击业务系统可能引发整个业务的崩溃。基于此,需要对服务是否异常进行监控,以及时发现异常执行服务的熔断处理。
发明内容
为克服相关技术中存在的问题,本说明书提供了服务器集群的熔断处理方法、装置及系统。
根据本说明书实施例的第一方面,提供一种服务器集群的熔断处理方法,所述方法应用于所述服务器集群中每台服务器,每台所述服务器与目标设备通信;所述方法包括:
针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
按照第一时间周期将本地统计结果发送给所述目标设备;
按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
可选的,所述对所述服务请求的处理结果进行统计,获得本地统计结果,包括:
利用所述服务请求携带的信息确定所述服务请求的类型,根据所述服务请求的类型和处理结果,获得对应不同服务请求类型的本地统计结果。
可选的,所述根据对所述服务请求的处理结果进行统计,获得本地统计结果,包括:
配置计数器,所述计数器在所述服务器启动后被启动,以令所述计数器加载于内存中运行;
利用所述计数器对所述服务请求的处理结果进行统计,获得本地统计结果。
可选的,所述计数器有多类,每类计数器分别用于统计对应类型的服务请求的处理结果。
可选的,所述每类计数器有两个,分别用于统计对应类型的服务请求的处理成功数量和处理失败数量。
可选的,所述根据所述集群统计结果确定是否触发熔断流程,包括:
根据所述集群统计结果与自定义熔断规则的匹配关系,确定是否触发熔断流程。
可选的,所述方法还包括:在熔断流程触发后的设定时间到达后,终止所述熔断流程。
根据本说明书实施例的第二方面,提供一种服务器集群的熔断处理装置,所述装置应用于所述服务器集群中每台服务器,每台所述服务器与目标设备通信;所述装置包括:
统计模块,用于:针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
发送模块,用于:按照第一时间周期将本地统计结果发送给所述目标设备;
触发模块,用于:按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
可选的,所述统计模块,还用于:
利用所述服务请求携带的信息确定所述服务请求的类型,根据所述服务请求的类型和处理结果,获得对应不同服务请求类型的本地统计结果。
可选的,所述统计模块,还用于:
配置计数器,所述计数器在所述服务器启动后被启动,以令所述计数器加载于内存中运行;
利用所述计数器对所述服务请求的处理结果进行统计,获得本地统计结果。
可选的,所述计数器有多类,每类计数器分别用于统计对应类型的服务请求的处理结果。
可选的,所述每类计数器有两个,分别用于统计对应类型的服务请求的处理成功数量和处理失败数量。
可选的,所述触发模块,还用于:
根据所述集群统计结果与自定义熔断规则的匹配关系,确定是否触发熔断流程。
可选的,所述装置还包括恢复模块,用于:在熔断流程触发后的设定时间到达后,终止所述熔断流程。
根据本说明书实施例的第三方面,提供一种熔断处理系统,包括服务器集群和目标设备,所述服务器集群中每台所述服务器与目标设备通信;
所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
所述服务器按照第一时间周期将本地统计结果发送给所述目标设备;
所述目标设备在接收到每台服务器的本地统计结果进行统计,获得集群统计结果;
所述服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。
根据本说明书实施例的第四方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现前述服务器集群的熔断处理方法。
根据本说明书实施例的第五方面,提供一种服务器集群的熔断处理方法,所述方法应用于目标设备,所述目标设备与所述服务器集群中每台服务器目标设备通信;所述方法包括:
接收所述每台服务器按照第一时间周期发送的本地统计结果;所述本地统计结果是所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计而获得的;
在接收到每台服务器的本地统计结果后统计集群统计结果;
根据所述每台服务器按照第二时间周期的访问,将所述集群统计结果提供给所述每台服务器。
本说明书的实施例提供的技术方案可以包括以下有益效果:
本说明书实施例中,服务器在处理服务请求后会获得处理结果,由每台服务器对自身的处理结果进行统计,从而可达到实时快速统计的目的;各台服务器按照第一时间周期将本地统计结果发送给所述目标设备,以使目标设备可确定集群统计结果,之后,各台服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。本实施例通过对第一时间周期和第二时间周期的配置,以及由服务器实时统计的方式,可以实现快速的异常监测,可以及时地对异常业务进行熔断处理。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1A是本说明书根据一示例性实施例示出的一种服务器集群的熔断处理方法的应用场景图。
图1B是本说明书根据一示例性实施例示出的一种服务器集群的熔断处理方法的流程图。
图2是本说明书根据一示例性实施例示出的一种熔断处理方法示意图。
图3是本说明书根据一示例性实施例示出的一种服务器集群的熔断处理装置所在硬件结构图。
图4是本说明书根据一示例性实施例示出的一种服务器集群的熔断处理装置的框图。
图5是本说明书根据一示例性实施例示出的另一种服务器集群的熔断处理方法的流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
大型企业的后台系统通常是经过内部通信组件解藕形成的多个业务系统的串联,此类业务系统职责分明,开发解藕互不干扰,但是同时也带来了链路稳定性问题。如一个商品下单购买的业务,可能涉及查询用户服务、店铺服务、商品服务或优惠申领服务等多种服务,这个过程中任何一个服务发生异常即会导致业务的中断,若发生异常时仍然有大流量不断冲击业务系统可能引发整个业务的崩溃。
一些企业采用熔断机制来应对上述错误异常情况。“熔断”是指阻断对发生异常的服务的服务请求,相当于对该发生异常的服务进行流量限制或断流。在一些业务场景中,企业的组件系统可以提供有业务熔断报警组件,其实现通常基于业务打印异常日志,通过异步采集业务系统产生的日志,通过日志对错误异常数据进行统计,实现报警及熔断接口策略,但是这样的异步流程可能会有较大时间的延迟。因为日志从应用打印到最终集群统计需要经历几分钟的延时,即使短短3分钟的故障时间,也足够导致下游系统不断地异常报错,最终导致服务器巨大的处理压力甚至崩溃,或者,3分钟的数据库异常也足够将整个数据库集群拖垮,没能快速地响应处理很容易导致下游系统的服务崩溃。
基于此,如图1A所示,是本说明书根据一示例性实施例提供一种系统架构示意图,图1A示出了一服务器集群和一目标设备,该服务器集群包括有多台服务器,每台所述服务器与目标设备通信;如图1B所示,是本说明书根据一示例性实施例提供一种服务器集群的熔断处理方法,该方法可应用于所述服务器,包括如下步骤:
在步骤102中,针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果。
在步骤104中,按照第一时间周期将本地统计结果发送给所述目标设备。
在步骤106中,按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
在分布式业务场景中,各台服务器会承接服务请求,若业务正常,服务请求可以成功处理完成,若业务异常,则服务请求处理失败。为了实现快速监控,本说明书实施例中由各台服务器根据自身对服务请求的处理情况进行统计。作为例子,可以对服务请求的处理成功或处理失败的数量都进行计数,例如处理成功的服务请求的数量,以及处理失败的服务请求的数量等。上述统计过程可以由服务器实时执行,在获得每条服务请求的处理结果后立刻执行统计。
通过服务器本地实时的统计方式,能够及时地确定本地的服务请求的处理情况,其中,服务器可以按照第一时间周期将本地统计结果发送给目标设备,由于目标设备可以与每台服务器通信,各台服务器都会将自身统计的本地统计结果发送给目标设备,因此目标设备可以基于此统计整个服务器集群的集群统计结果。其中,该第一时间周期可以根据需要灵活配置,若设置较小的周期,可以使服务器快速地将自身的本地统计结果发送给目标设备,作为例子,可以是设置为5秒等时间。
作为例子,可以采用计数器的方式实现对上述本地统计结果的统计,该计数器可以在服务器启动后被启动执行,以加载于内存中运行,从而实现对服务器的服务请求处理请求的实时快速统计。在一些例子中,上述本地统计结果可以包括服务请求的成功处理数量,还可以包括服务请求的失败处理数量,可选的,可以配置两个计数器,分别用于对服务请求的成功处理数量和失败处理数量的计数。
本实施例中,服务器可以实时对服务请求的处理请求进行统计,并获得本地统计结果,该本地统计结果会按照第一时间周期发送给目标设备;在一些例子中,服务器每隔第一时间周期发送本地统计结果后,可以将本地统计结果清零,以进行下一时间周期的统计。例如,在00:00:00,服务器开始进行统计;在00:00:05,本地统计结果为“成功数量300,失败数量5”,服务器将本地统计结果发送给目标设备,并且可以将当前的本地统计结果清零,以从00:00:05开始进行下一时间周期的统计。
目标设备的集群统计结果可以用于分析整个集群中服务请求的处理情况,本实施例中,各台服务器可以按照第二时间周期从目标设备处获取该集群统计结果,以确定整个集群目前对服务请求的处理情况,进一步可分析业务是否异常,最终决定是否触发熔断流程。其中,所述第二时间周期可根据需要灵活配置,若设置较小的周期,可以使服务器快速地利用集群统计结果分析当前是否有业务异常,作为例子,可以是设置为1分钟等时间。
由上述实施例可见,服务器在处理服务请求后会获得处理结果,由每台服务器对自身的处理结果进行统计,从而可达到实时快速统计的目的;各台服务器按照第一时间周期将本地统计结果发送给所述目标设备,以使目标设备可确定集群统计结果,之后,各台服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。本实施例通过对第一时间周期和第二时间周期的配置,以及由服务器实时统计的方式,可以实现快速的异常监测,可以及时地对异常业务进行熔断处理。
可选的,本实施例的本地统计结果可以携带有服务器标识、统计时间范围、服务请求类型等多种信息,以根据需要进行相应的统计或分析等。作为例子,本地统计结果携带有服务器标识,可以供目标设备确定集群中是否有服务器未发送本地统计结果。可选的,本地统计结果携带有统计时间范围,可以供目标设备根据需要进行不同时间段的统计,获得不同时间段的集群统计结果。
在另一些例子中,业务方提供有多项服务,服务器需要处理的服务请求可能涉及多种类型,本实施例的本地统计结果可以携带有服务请求类型,从而可以获得更为精细的集群统计结果,进行更为精细的异常检测,这些类型的划分可以根据实际业务需要而配置,本实施例对此不作限定。可选的,每种服务请求类型对应的具体服务可以有一项,也可以有多项。可选的,服务器在对所述服务请求的处理结果进行统计时,可以根据服务请求的类型进行区分,以统计不同类型的服务请求的处理结果,获得不同服务请求类型的本地统计结果。其中,服务请求中通常携带有多种信息,例如服务请求的参数、服务请求的属性信息、服务请求的发起方信息等等,通过服务请求中携带的信息以及对服务请求类型的自定义划分规则,可以实现对业务请求的类型的识别。
基于此,服务器可以将多个携带有服务请求类型的本地统计结果发送给目标设备,使得目标设备可以统计得到多个对应服务请求类型的集群统计结果,根据不同服务请求类型的集群统计结果,可以确定每种类型的服务是否异常,进而针对该类异常的服务触发熔断流程。针对本实施例,实际应用中,可以由计数器进行统计时,由计数器通过识别业务请求的类型后进行统计。或者,可以根据需要针对每种类型服务实现对应的计数器,每类计数器分别用于统计对应类型的服务请求的处理结果,获得该类服务请求的本地统计结果。进一步的,每类计数器还可以有两个,分别用于统计对应类型的服务请求的处理成功数量和处理失败数量。
本实施例中的目标设备,在图1A所示实施例中以独立于服务器集群的一远端设备作为示例,在另一些例子中,目标设备还可以是指另一集群中的一个或多个节点设备。可选的,可以采用在该设备上配置一数据库系统实现对集群统计结果的统计、存储与发送等功能。作为例子,可以基于分布式系统的缓存组件实现,例如Tair等存储系统以实现上述方案。
对于如何根据所述集群统计结果确定是否触发熔断流程的实现,本实施例不进行限定,在实际业务场景中,基于何种条件触发熔断流程可以有多种实现方式。作为例子,可以根据本地统计结果的指示,若分析出处理成功率在一定时间段内持续下降、或者处理失败率在一定时间段内持续上升、或者是处理成功率处于设定异常范围、或者是处理失败率处于设定异常范围等,可以触发相应的熔断流程。其中,具体的熔断流程也可以有多种实现方式,例如对出现异常的服务进行降级处理,如降低该服务的流量或阻断该服务的流量等,具体的,降低多少流量以及满足何种条件阻断流量等,可根据需要灵活配置。
可选的,本实施例还可以提供熔断规则的配置功能,例如提供有针对熔断规则的配置界面,通过该配置界面可接收用户配置的自定义熔断规则,因此可以根据集群统计结果与熔断规则的匹配关系,确定是否触发熔断流程。其中,所述自定义熔断规则可以有多条,分别对应不同服务请求类型。因此,本实施例可以针对不同服务请求类型配置对应的熔断规则,从而进行细致的熔断处理。可选的,上述的服务请求类型的划分、每种类型的服务的熔断规则、以及具体的熔断规则可以存储于每台服务器,则需要变动更新时可以向每台服务器发送相应的更新内容;或者也可以都存储于目标设备,由每台服务器访问目标设备获取到相应内容,需要变动更新时只需要目标设备进行更新即可。可选的,服务器在确定需要熔断处理时,可以通过目标设备查询相应的熔断规则,或者是该需要被熔断处理的服务请求类型具体对应有哪几种服务以及服务标识等,从而可以根据服务标识触发相应的熔断规则。
在触发熔断流程后,本实施例还提供有恢复机制的实施例。真实场景中的业务异常往往是抖动导致的,大部分只要能保证短时间网络或组件抖动期间短时间进行降级保护,稍后自动恢复业务即可,这样的恢复机制可以通过定制化进行配置。作为例子,可以是在熔断流程触发后的设定时间到达后,终止熔断流程,使被触发熔断的服务恢复执行。其中,上述设定时间可以由根据需要自定义配置,例如可以设定每种服务都是相同的设定时间,也可以是针对每种服务设定相应的设定时间,或者是针对每条熔断规则设定相应的时间等。
如图2所示,是本说明书根据一示例性实施例示出的另一业务熔断处理示意图,图2左侧矩形框为服务器集群的示意,矩形框内的四个云朵状为集群中单台服务器(也可称为单机)的示意。其中,服务器可以实现有本地计数器,用于对自身的业务请求的处理结果进行统计,例如图2中示出的“inc_success_num()”以及“inc_fail_num()”,分别是用于统计业务请求成功处理数量和统计业务请求失败处理数量。在图2中,本地计数器加载于内存中运行进行内存计数,服务器每隔5秒的时间周期将本地统计结果上报至远端计数器。
本实施例的远端计数器是指图2中右侧矩形框内的计数器,右侧的矩形框可以是指独立于服务器集群的其他设备,该设备中也配置有计数器,用于统计一段时间内整个集群内所有服务器发送的本地统计结果,进而获得集群统计结果。
服务器可以配置一定时任务,以按照第二时间周期从所述目标设备获取集群统计结果,例如图2中五角星形状示出的schedule任务,其可以每隔1分钟触发一次获取统计结果,服务器可以根据集群统计结果确定是否触发熔断流程,如图2中示出的Analysis()。
其中,目标设备还存储有服务请求类型与服务标识(即图中的biz_breaker_flag)的对应关系,服务器在确定需要熔断处理时,可以通过目标设备查询该需要被熔断处理的服务请求类型具体对应有哪几种服务以及的服务标识等,从而可以根据服务标识触发相应的熔断规则,触发熔断规则的处理即图中的is_breaker()。
与前述服务器集群的熔断处理方法的实施例相对应,本说明书还提供了服务器集群的熔断处理装置及其所应用的终端的实施例。
本说明书服务器集群的熔断处理装置的实施例可以应用在计算机设备上,例如服务器。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在文件处理的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本说明书服务器集群的熔断处理装置所在计算机设备的一种硬件结构图,除了图3所示的处理器310、内存330、网络接口320、以及非易失性存储器340之外,实施例中装置331所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。
如图4所示,图4是本说明书根据一示例性实施例示出的一种服务器集群的熔断处理装置的框图,所述装置包括:
统计模块41,用于:针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
发送模块42,用于:按照第一时间周期将本地统计结果发送给所述目标设备;
触发模块43,用于:按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
可选的,所述统计模块,还用于:
利用所述服务请求携带的信息确定所述服务请求的类型,根据所述服务请求的类型和处理结果,获得对应不同服务请求类型的本地统计结果。
可选的,所述统计模块,还用于:
配置计数器,所述计数器在所述服务器启动后被启动,以令所述计数器加载于内存中运行;
利用所述计数器对所述服务请求的处理结果进行统计,获得本地统计结果。
可选的,所述计数器有多类,每类计数器分别用于统计对应类型的服务请求的处理结果。
可选的,所述每类计数器有两个,分别用于统计对应类型的服务请求的处理成功数量和处理失败数量。
可选的,所述触发模块,还用于:
根据所述集群统计结果与自定义熔断规则的匹配关系,确定是否触发熔断流程。
可选的,所述装置还包括恢复模块,用于:在熔断流程触发后的设定时间到达后,终止所述熔断流程。
相应的,本说明书还提供一种装置,所述装置包括有处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:
相应的,本说明书还提供一种熔断处理系统,包括服务器集群和目标设备,所述服务器集群中每台所述服务器与目标设备通信;
所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
所述服务器按照第一时间周期将本地统计结果发送给所述目标设备;
所述目标设备在接收到每台服务器的本地统计结果进行统计,获得集群统计结果;
所述服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。
相应的,本说明书还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现前述服务器集群的熔断处理方法。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
如图5所示,图5是本说明书根据一示例性实施例示出的另一种服务器集群的熔断处理方法的流程图,所述方法应用于目标设备,所述目标设备与所述服务器集群中每台服务器目标设备通信;所述方法包括:
在步骤502中,接收所述每台服务器按照第一时间周期发送的本地统计结果;所述本地统计结果是所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计而获得的;
在步骤504中,在接收到每台服务器的本地统计结果后统计集群统计结果;
在步骤506中,根据所述每台服务器按照第二时间周期的访问,将所述集群统计结果提供给所述每台服务器。
上述实施例从目标设备的角度描述了如何执行熔断处理的流程,具体的实施方式可参考前述实施例的描述,本实施例对此不再赘述。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (10)
1.一种服务器集群的熔断处理方法,所述方法应用于所述服务器集群中每台服务器,每台所述服务器与目标设备通信;所述方法包括:
针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
按照第一时间周期将本地统计结果发送给所述目标设备;
按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
2.根据权利要求1所述的方法,所述对所述服务请求的处理结果进行统计,获得本地统计结果,包括:
利用所述服务请求携带的信息确定所述服务请求的类型,根据所述服务请求的类型和处理结果,获得对应不同服务请求类型的本地统计结果。
3.根据权利要求1或2所述的方法,所述根据对所述服务请求的处理结果进行统计,获得本地统计结果,包括:
配置计数器,所述计数器在所述服务器启动后被启动,以令所述计数器加载于内存中运行;
利用所述计数器对所述服务请求的处理结果进行统计,获得本地统计结果。
4.根据权利要求3所述的方法,所述计数器有多类,每类计数器分别用于统计对应类型的服务请求的处理结果。
5.根据权利要求4所述的方法,所述每类计数器有两个,分别用于统计对应类型的服务请求的处理成功数量和处理失败数量。
6.根据权利要求1所述的方法,所述根据所述集群统计结果确定是否触发熔断流程,包括:
根据所述集群统计结果与自定义熔断规则的匹配关系,确定是否触发熔断流程。
7.一种服务器集群的熔断处理装置,所述装置应用于所述服务器集群中每台服务器,每台所述服务器与目标设备通信;所述装置包括:
统计模块,用于:针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
发送模块,用于:按照第一时间周期将本地统计结果发送给所述目标设备;
触发模块,用于:按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程;其中,所述集群统计结果由所述目标设备在接收到每台服务器的本地统计结果后统计得到。
8.一种熔断处理系统,包括服务器集群和目标设备,所述服务器集群中每台所述服务器与目标设备通信;
所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计,获得本地统计结果;
所述服务器按照第一时间周期将本地统计结果发送给所述目标设备;
所述目标设备在接收到每台服务器的本地统计结果进行统计,获得集群统计结果;
所述服务器按照第二时间周期从所述目标设备获取集群统计结果,并根据所述集群统计结果确定是否触发熔断流程。
9.一种服务器集群的熔断处理方法,所述方法应用于目标设备,所述目标设备与所述服务器集群中每台服务器目标设备通信;所述方法包括:
接收所述每台服务器按照第一时间周期发送的本地统计结果;所述本地统计结果是所述服务器针对待处理的每条服务请求,对所述服务请求的处理结果进行统计而获得的;
在接收到每台服务器的本地统计结果后统计集群统计结果;
根据所述每台服务器按照第二时间周期的访问,将所述集群统计结果提供给所述每台服务器。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至6、或8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910629349.4A CN110460639A (zh) | 2019-07-12 | 2019-07-12 | 服务器集群的熔断处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910629349.4A CN110460639A (zh) | 2019-07-12 | 2019-07-12 | 服务器集群的熔断处理方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110460639A true CN110460639A (zh) | 2019-11-15 |
Family
ID=68482797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910629349.4A Pending CN110460639A (zh) | 2019-07-12 | 2019-07-12 | 服务器集群的熔断处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110460639A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111901188A (zh) * | 2020-06-19 | 2020-11-06 | 微医云(杭州)控股有限公司 | 数据流量控制方法、装置、设备和存储介质 |
CN113411208A (zh) * | 2021-05-28 | 2021-09-17 | 青岛海尔科技有限公司 | 用于分布式流量管理的系统、设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182282A (zh) * | 2014-09-12 | 2014-12-03 | 五八同城信息技术有限公司 | 一种服务器过载保护系统及方法 |
CN106470163A (zh) * | 2015-08-17 | 2017-03-01 | 腾讯科技(北京)有限公司 | 一种信息处理方法、装置和系统 |
US20170149813A1 (en) * | 2015-11-20 | 2017-05-25 | Webroot Inc. | Binocular Fusion Analytics Security |
CN106776099A (zh) * | 2017-01-11 | 2017-05-31 | 北京皮尔布莱尼软件有限公司 | 一种服务熔断隔离系统和方法 |
CN107465627A (zh) * | 2017-08-11 | 2017-12-12 | 北京小度信息科技有限公司 | 过载保护方法、装置、电子设备及流量处理系统 |
CN107819797A (zh) * | 2016-09-12 | 2018-03-20 | 平安科技(深圳)有限公司 | 访问请求处理方法和装置 |
CN108874531A (zh) * | 2017-05-12 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 用于熔断服务的方法、装置、系统及电子设备 |
CN108924213A (zh) * | 2018-06-27 | 2018-11-30 | 北京金山安全软件有限公司 | 一种服务器的qps控制方法、装置及电子设备 |
CN109274547A (zh) * | 2018-08-17 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 基于网络安全的服务熔断方法、装置、设备及存储介质 |
CN109766210A (zh) * | 2019-01-17 | 2019-05-17 | 多点生活(成都)科技有限公司 | 服务熔断控制方法、服务熔断控制装置和服务器集群 |
-
2019
- 2019-07-12 CN CN201910629349.4A patent/CN110460639A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182282A (zh) * | 2014-09-12 | 2014-12-03 | 五八同城信息技术有限公司 | 一种服务器过载保护系统及方法 |
CN106470163A (zh) * | 2015-08-17 | 2017-03-01 | 腾讯科技(北京)有限公司 | 一种信息处理方法、装置和系统 |
US20170149813A1 (en) * | 2015-11-20 | 2017-05-25 | Webroot Inc. | Binocular Fusion Analytics Security |
CN107819797A (zh) * | 2016-09-12 | 2018-03-20 | 平安科技(深圳)有限公司 | 访问请求处理方法和装置 |
CN106776099A (zh) * | 2017-01-11 | 2017-05-31 | 北京皮尔布莱尼软件有限公司 | 一种服务熔断隔离系统和方法 |
CN108874531A (zh) * | 2017-05-12 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 用于熔断服务的方法、装置、系统及电子设备 |
CN107465627A (zh) * | 2017-08-11 | 2017-12-12 | 北京小度信息科技有限公司 | 过载保护方法、装置、电子设备及流量处理系统 |
CN108924213A (zh) * | 2018-06-27 | 2018-11-30 | 北京金山安全软件有限公司 | 一种服务器的qps控制方法、装置及电子设备 |
CN109274547A (zh) * | 2018-08-17 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 基于网络安全的服务熔断方法、装置、设备及存储介质 |
CN109766210A (zh) * | 2019-01-17 | 2019-05-17 | 多点生活(成都)科技有限公司 | 服务熔断控制方法、服务熔断控制装置和服务器集群 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111901188A (zh) * | 2020-06-19 | 2020-11-06 | 微医云(杭州)控股有限公司 | 数据流量控制方法、装置、设备和存储介质 |
CN113411208A (zh) * | 2021-05-28 | 2021-09-17 | 青岛海尔科技有限公司 | 用于分布式流量管理的系统、设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10033607B2 (en) | Packet loss debug system and method | |
De Leoni et al. | A general framework for correlating business process characteristics | |
US20160170818A1 (en) | Adaptive fault diagnosis | |
CN104601696B (zh) | 服务处理方法、服务调用系统、装置和系统 | |
CN110232010A (zh) | 一种告警方法、告警服务器及监控服务器 | |
US20160034766A1 (en) | Optimizing video stream processing | |
CN103220173B (zh) | 一种报警监控方法及监控系统 | |
CN110058977A (zh) | 基于流式处理的监控指标异常检测方法、装置及设备 | |
US10505881B2 (en) | Generating message envelopes for heterogeneous events | |
CN109656782A (zh) | 可视化调度监控方法、装置及服务器 | |
CN110460639A (zh) | 服务器集群的熔断处理方法、装置及系统 | |
CN105868035B (zh) | 一种故障预测的方法、装置和系统 | |
CN109309591B (zh) | 流量数据统计方法、电子设备及存储介质 | |
CN109634819A (zh) | 告警根因定位方法和装置、电子设备 | |
CN110290190A (zh) | 一种采集数据的方法、被监控设备及监控服务器 | |
CN111181799A (zh) | 一种网络流量监控方法及设备 | |
CN113656168A (zh) | 一种流量的自动容灾和调度的方法、系统、介质和设备 | |
CN110113392A (zh) | 一种监控app客户端埋点采集完整性的方法及设备 | |
CN108121637B (zh) | 一种用于记录应用日志的方法与装置 | |
US9658932B2 (en) | Lightweight functional testing | |
CN107426012B (zh) | 一种基于超融合架构的故障恢复方法及其装置 | |
US10439941B2 (en) | Determining switch load values for switches | |
CN112783629A (zh) | 服务调用方法、装置、电子设备及存储介质 | |
EP3062228B1 (en) | Lightweight functional testing | |
CN116760655A (zh) | Sd-wan应用中提供cpe最优接入的pop点方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191115 |