CN110837431A - 服务控制方法、装置、计算机设备及计算机可读存储介质 - Google Patents

服务控制方法、装置、计算机设备及计算机可读存储介质 Download PDF

Info

Publication number
CN110837431A
CN110837431A CN201911107684.4A CN201911107684A CN110837431A CN 110837431 A CN110837431 A CN 110837431A CN 201911107684 A CN201911107684 A CN 201911107684A CN 110837431 A CN110837431 A CN 110837431A
Authority
CN
China
Prior art keywords
service
fusible
fusing
preset condition
services
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
Application number
CN201911107684.4A
Other languages
English (en)
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.)
Shenzhen Qianhai Huanlianyi Information Technology Service Co Ltd
Shenzhen Qianhai Huanrong Lianyi Information Technology Service Co Ltd
Original Assignee
Shenzhen Qianhai Huanlianyi Information Technology Service Co Ltd
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 Shenzhen Qianhai Huanlianyi Information Technology Service Co Ltd filed Critical Shenzhen Qianhai Huanlianyi Information Technology Service Co Ltd
Priority to CN201911107684.4A priority Critical patent/CN110837431A/zh
Publication of CN110837431A publication Critical patent/CN110837431A/zh
Pending legal-status Critical Current

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/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明实施例提供了一种服务控制方法、装置、计算机设备及计算机可读存储介质。属于系统服务技术领域,实现服务控制时,通过计算机设备获取可熔断服务列表中包含的可熔断服务;判断可熔断服务是否满足第一预设条件;若可熔断服务满足所述第一预设条件,通过分布式开关中可熔断服务所对应的开关将可熔断服务设置为熔断,以将可熔断服务设置为熔断服务,并添加至熔断服务队列中,熔断服务队列指由熔断服务组成的队列;若可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控可熔断服务,直至可熔断服务终止,能够提高应用管理系统服务的健壮性和效率。

Description

服务控制方法、装置、计算机设备及计算机可读存储介质
技术领域
本发明涉及系统服务技术领域,尤其涉及一种服务控制方法、装置、计算机设备及计算机可读存储介质。
背景技术
随着应用管理系统(英文为Application Management System,简称AMS)中用户量和业务量的不断壮大,特别是业务这块的发展,需要快速的迭代应用管理系统以满足业务的需求。在测试环境中,由于模拟的用户量少,模拟的场景也不真实,应用管理系统能顺利的测试通过,但是,在生产环境中,大量的用户或某个场景下大量的流量,应用管理系统就会出现某一个服务出现异常,从而导致整个系统不可用的问题,降低了应用管理系统服务的效率。
发明内容
本发明实施例提供了一种服务控制方法、装置、计算机设备及计算机可读存储介质,能够解决传统技术中应用管理系统服务的效率较低的问题。
第一方面,本发明实施例提供了一种服务控制方法,所述方法包括:获取可熔断服务列表中包含的可熔断服务;判断所述可熔断服务是否满足第一预设条件;若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
第二方面,本发明实施例还提供了一种服务控制装置,包括:获取单元,用于获取可熔断服务列表中包含的可熔断服务;第一判断单元,用于判断所述可熔断服务是否满足第一预设条件;熔断单元,用于若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;第一迭代单元,用于若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现所述服务控制方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行所述服务控制方法。
本发明实施例提供了一种服务控制方法、装置、计算机设备及计算机可读存储介质。本发明实施例实现服务控制时,通过计算机设备获取可熔断服务列表中包含的可熔断服务;判断所述可熔断服务是否满足第一预设条件;若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止,本发明实施例通过对应用管理系统中存在的一个服务不可用导致整个系统奔溃的问题,为了保证重要或基本的服务能正常运行,将一些不重要或不紧急的服务或任务进行服务的延迟使用或暂停使用等服务降级处理,能够提高应用管理系统服务的健壮性和效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的服务控制方法的一个流程示意图;
图2为本发明实施例提供的服务控制方法的另一个流程示意图;
图3为本发明实施例提供的服务控制装置的示意性框图;以及
图4为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
请参阅图1,图1为本发明实施例提供的服务控制方法的一个示意性流程图。如图1所示,该方法包括以下步骤S101-S103:
S101、获取可熔断服务列表中包含的可熔断服务。
具体地,应用管理系统提供的服务按照重要性划分,包括两部分服务,一部分为不可熔断服务,比如一些重要或者基本的服务,为了保证应用管理系统的正常运行,一些基本的服务是不可熔断的,另外,为了保证业务的正常运行,一些重要的服务也是不可熔断的;另一部分为可熔断服务,在业务运行中一些非基本服务或者非重要服务,属于不重要或者不紧急服务,可以进行熔断,称为可熔断服务。应用管理系统中的服务为不可熔断服务或者为可熔断服务,可由研发人员根据业务的性质自行进行设置。应用管理系统中设置一个包含可熔断服务的可熔断服务列表,例如,可熔断服务列表可采用循环队列-链表形式进行设计,也即循环队列结合链表形成的集合作为可熔断服务列表。计算机设备实现针对可熔断服务的控制时,从可熔断服务列表中获取可熔断服务,以对可熔断服务是否进行熔断进行判断。
S102、判断所述可熔断服务是否满足第一预设条件;
S103、若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
其中,所述第一预设条件包括所述可熔断服务的无响应次数超过预设次数或者所述可熔断服务的应答超时超过预设时间。
具体地,本发明实施例中,针对可熔断服务,通过设置分布式开关,采取集中式管理开关配置信息即可实现服务的熔断,从而实现所述可熔断服务的服务降级。例如,在JAVA中,对于单个开关,对应Java中的类型,通过Boolean值,在需要做开关操作的地方,调用这个属性,判断状态,然后走相应的逻辑即可。在单个java系统中,改变开关的状态,通过一个接口,外部可以改变属性的值,例如改为True或者False,可以通过页面来维护开关,通过页面的点击类改变这个全局唯一的属性,从而实现开关动作的触发。其中,服务降级,指当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。
本发明中的服务控制通过服务熔断进行,所述服务熔断包括一个熔断请求判断模块,通过熔断请求判断模块所对应的熔断请求判断算法,进行熔断判断,判断所述可熔断服务是否满足第一预设条件,若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
进一步地,所述判断所述可熔断服务是否满足第一预设条件的步骤包括:
判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数;
若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。
具体地,计算机设备判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数,若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。例如,把所有的可熔断服务加入到一个循环队列-链表的集合,启动一批线程进行循环判断,记录每一个服务的Ping/Pong时间,对连续超过几次无响应或应答超时的服务设置为熔断,其中,Ping/Pong是一种数据缓存的手段,通过Ping/Pong操作可以提高数据传输的效率。
本发明实施例实现服务控制时,通过计算机设备获取可熔断服务列表中包含的可熔断服务;判断所述可熔断服务是否满足第一预设条件;若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止,本发明实施例通过对应用管理系统中存在的一个服务不可用导致整个系统奔溃的问题,为了保证重要或基本的服务能正常运行,将一些不重要或不紧急的服务或任务进行服务的延迟使用或暂停使用等服务降级处理,能够提高应用管理系统服务的健壮性和效率。
请参阅图2,图2为本发明实施例提供的服务控制方法的另一个流程示意图。如图2所示,在该实施例中,所述获取可熔断服务列表中包含的可熔断服务的步骤之前,还包括:
S200、将可熔断服务添加至循环队列-链表以形成可熔断服务列表。
具体地,计算机设备获取到可熔断服务后,将所有的可熔断服务添加至可熔断服务列表,例如,如图2所示,添加至循环队列-链表以形成可熔断服务列表,由于链表不需要初始化长度,添加和删除可熔断服务较为方便,能够提高添加和删除可熔断服务的处理效率,其中,图2中步骤S201至步骤S203与图1中步骤S101至S103各自对应相同,在此不再赘述。
请继续参阅图2,如图2所示,在该实施例中,所述通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断的步骤之后,还包括:
S204、判断所述熔断服务是否满足第二预设条件;
S205、若所述熔断服务满足所述第二预设条件,将所述熔断服务添加至正常服务队列,并将所述熔断服务从所述熔断服务队列中删除,所述正常服务队列指由服务器对所述服务能进行正常响应的系统服务组成的队列;
若所述熔断服务不满足所述第二预设条件,返回所述判断所述熔断服务是否满足第二预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止。
具体地,本发明实施中的所述服务熔断还包括一个熔断恢复模块,通过熔断恢复模块所对应的熔断恢复判断算法,进行熔断恢复,将已降级的可熔断服务恢复至正常处理的服务。计算机设备判断所述熔断服务是否满足第二预设条件,若所述熔断服务满足所述第二预设条件,将所述熔断服务添加至正常服务队列,并将所述熔断服务从所述熔断服务队列中删除,所述正常服务队列指由服务器对所述服务能进行正常响应的系统服务组成的队列,若所述熔断服务不满足所述第二预设条件,返回所述判断所述熔断服务是否满足第二预设条件的步骤以继续监控所述熔断服务,迭代所述判断所述熔断服务是否满足第二预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止,所述熔断服务终止是指所述熔断服务结束或者所述熔断服务恢复至正常的服务。例如,对已设置了熔断的服务进行循环单独处理,如果有超过几次之后都能正常响应,则把它从熔断队列里剔除,重新添加至(例如采取Put方式)正常服务队列,从而通过对所述可熔断服务进行服务降级和服务恢复处理,灵活的设置所述可熔断服务的服务级别,能够提高应用管理系统服务的健壮性和效率。
请继续参阅图2,如图2所示,在该实施例中,所述迭代上述过程以循环监控所述熔断服务,直至所述熔断服务终止的步骤之前,还包括:
S206、判断所述熔断服务是否满足第三预设条件;
S207、若所述熔断服务满足所述第三预设条件,对所述熔断服务返回默认值,并终止所述熔断服务。
其中,第三预设条件包括所述可熔断服务的无响应次数超过预设次数或者所述可熔断服务的应答超时超过预设时间。
具体地,对于所述可熔断服务进行熔断处理之后,若所述可熔断服务超过预设应答时间或者超过预设次数,还无法进行响应,为了避免所述可熔断服务一直处于积压状态而使整个提醒的可熔断服务积压越来越多,也为了避免对用户端一直没有回应而影响计算机设备对用户服务结果的输出效率,对所述可熔断服务进行熔断之后实施兜底措施,即对已触发熔断的服务,可进行兜底处理,返回一个默认值。从而判断所述熔断服务是否满足第三预设条件,若所述熔断服务满足所述第三预设条件,对所述熔断服务返回默认值,并终止所述熔断服务,给用户端的服务请求一个结果输出,避免计算机设备服务宕机,也能够提高应用管理系统服务的健壮性和效率,若所述熔断服务不满足所述第三预设条件,返回所述判断所述熔断服务是否满足第三预设条件的步骤,迭代所述判断所述熔断服务是否满足第三预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止。
进一步地,所述获取可熔断服务列表中包含的可熔断服务的步骤之前还包括:
通过TCP/IP层请求和应答协议接收熔断请求。
具体地,自定义熔断请求和应答协议,定义一个TCP/IP层的请求和应答协议接收熔断请求和应答,TCP/IP层的请求和应答协议相比HTTP协议报文更小,性能更优,能够提高熔断请求和应答的效率。其中,TCP/IP(Transmission Control Protocol/InternetProtocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。
进一步地,所述通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断的步骤之后,还包括:
判断所述熔断服务是否满足第四预设条件;
若所述熔断服务满足所述第四预设条件,对所述熔断服务通过预设方式进行提示。
其中,所述预设方式包括熔断报警及日志处理。第四预设条件包括所述可熔断服务的无响应次数超过预设次数或者所述可熔断服务的应答超时超过预设时间。
具体地,计算机设备在所述可熔断服务已进行熔断设置后,判断所述熔断服务是否满足第四预设条件,若所述熔断服务满足所述第四预设条件,对所述熔断服务通过预设方式进行提示。例如,本发明实施中的所述服务熔断还可以包括一个熔断报警模块,通过熔断报警模块所对应的熔断报警判断算法,进行熔断报警,比如,对设置超过某些规定的所述熔断服务进行报警和日志处理,以使人工介入进行处理,相对于所述熔断服务一直处于搁置状态,能够提高熔断服务的及时性和效率。
进一步地,所述通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断的步骤之后,还包括:
将熔断服务恢复自动执行。
具体地,对不重要的逻辑,可以增加服务恢复自动执行的注解,通过控制层切面方式,在触发了服务熔断之后,把入参加入到恢复自动执行的队列里,等熔断服务恢复,触发重新执行,以避免所述熔断服务一直处于搁置状态,能够提高熔断服务的及时性和效率。
需要说明的是,上述各个实施例所述的服务控制方法,可以根据需要将不同实施例中包含的技术特征重新进行组合,以获取组合后的实施方案,但都在本发明要求的保护范围之内。
请参阅图3,图3为本发明实施例提供的服务控制装置的示意性框图。对应于上述服务控制方法,本发明实施例还提供一种服务控制装置。如图3所示,该服务控制装置包括用于执行上述服务控制方法的单元,该装置可以被配置于终端等计算机设备中。具体地,请参阅图3,该服务控制装置300包括获取单元301、第一判断单元302、熔断单元303及第一迭代单元304。
其中,获取单元301,用于获取可熔断服务列表中包含的可熔断服务;第一判断单元302,用于判断所述可熔断服务是否满足第一预设条件;熔断单元303,用于若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;第一迭代单元304,用于若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
在一个实施例中,所述服务控制装置300还包括:
添加单元,用于将可熔断服务添加至循环队列-链表以形成可熔断服务列表。
在一个实施例中,所述第一判断单元302包括:
第一判断子单元,用于判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数;
第一判定子单元,用于若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。
在一个实施例中,所述服务控制装置300还包括:
第二判断单元,用于判断所述熔断服务是否满足第二预设条件;
删除单元,用于若所述熔断服务满足所述第二预设条件,将所述熔断服务添加至正常服务队列,并将所述熔断服务从所述熔断服务队列中删除,所述正常服务队列指由服务器对所述服务能进行正常响应的系统服务组成的队列;
第二迭代单元,用于若所述熔断服务不满足所述第二预设条件,返回所述判断所述熔断服务是否满足第二预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止。
在一个实施例中,所述服务控制装置300还包括:
第三判断单元,用于判断所述熔断服务是否满足第三预设条件;
返回单元,用于若所述熔断服务满足所述第三预设条件,对所述熔断服务返回默认值,并终止所述熔断服务。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述服务控制装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
同时,上述服务控制装置中各个单元的划分和连接方式仅用于举例说明,在其他实施例中,可将服务控制装置按照需要划分为不同的单元,也可将服务控制装置中各单元采取不同的连接顺序和方式,以完成上述服务控制装置的全部或部分功能。
上述服务控制装置可以实现为一种计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。
请参阅图4,图4是本发明实施例提供的一种计算机设备的示意性框图。该计算机设备400可以是台式机电脑或者服务器等计算机设备,也可以是其他设备中的组件或者部件。
参阅图4,该计算机设备400包括通过系统总线401连接的处理器402、存储器和网络接口405,其中,存储器可以包括非易失性存储介质403和内存储器404。
该非易失性存储介质403可存储操作系统4031和计算机程序4032。该计算机程序4032被执行时,可使得处理器402执行一种上述服务控制方法。
该处理器402用于提供计算和控制能力,以支撑整个计算机设备400的运行。
该内存储器404为非易失性存储介质403中的计算机程序4032的运行提供环境,该计算机程序4032被处理器402执行时,可使得处理器402执行一种上述服务控制方法。
该网络接口405用于与其它设备进行网络通信。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备400的限定,具体的计算机设备400可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。
其中,所述处理器402用于运行存储在存储器中的计算机程序4032,以实现如下步骤:获取可熔断服务列表中包含的可熔断服务;判断所述可熔断服务是否满足第一预设条件;若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
在一实施例中,所述处理器402在实现所述获取可熔断服务列表中包含的可熔断服务的步骤之前,还实现以下步骤:
将可熔断服务添加至循环队列-链表以形成可熔断服务列表。
在一实施例中,所述处理器402在实现所述判断所述可熔断服务是否满足第一预设条件的步骤时,具体实现以下步骤:
判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数;
若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。
在一实施例中,所述处理器402在实现所述通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断的步骤之后,还实现以下步骤:
判断所述熔断服务是否满足第二预设条件;
若所述熔断服务满足所述第二预设条件,将所述熔断服务添加至正常服务队列,并将所述熔断服务从所述熔断服务队列中删除,所述正常服务队列指由服务器对所述服务能进行正常响应的系统服务组成的队列;
若所述熔断服务不满足所述第二预设条件,返回所述判断所述熔断服务是否满足第二预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止。
在一实施例中,所述处理器402在实现所述迭代上述过程以循环监控所述熔断服务,直至所述熔断服务终止的步骤之前,还实现以下步骤:
判断所述熔断服务是否满足第三预设条件;
若所述熔断服务满足所述第三预设条件,对所述熔断服务返回默认值,并终止所述熔断服务。
应当理解,在本发明实施例中,处理器402可以是中央处理单元(CentralProcessingUnit,CPU),该处理器402还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来完成,该计算机程序可存储于一计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行如下步骤:
一种计算机程序产品,当其在计算机上运行时,使得计算机执行以上各实施例中所描述的服务控制方法的步骤。
所述计算机可读存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述存储介质为实体的、非瞬时性的存储介质,例如可以是U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、磁碟或者光盘等各种可以存储计算机程序的实体存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种服务控制方法,其特征在于,包括:
获取可熔断服务列表中包含的可熔断服务;
判断所述可熔断服务是否满足第一预设条件;
若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;
若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
2.根据权利要求1所述服务控制方法,其特征在于,所述获取可熔断服务列表中包含的可熔断服务的步骤之前,还包括:
将可熔断服务添加至循环队列-链表以形成可熔断服务列表。
3.根据权利要求1所述服务控制方法,其特征在于,所述判断所述可熔断服务是否满足第一预设条件的步骤包括:
判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数;
若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。
4.根据权利要求1所述服务控制方法,其特征在于,所述通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断的步骤之后,还包括:
判断所述熔断服务是否满足第二预设条件;
若所述熔断服务满足所述第二预设条件,将所述熔断服务添加至正常服务队列,并将所述熔断服务从所述熔断服务队列中删除,所述正常服务队列指由服务器对所述服务能进行正常响应的系统服务组成的队列;
若所述熔断服务不满足所述第二预设条件,返回所述判断所述熔断服务是否满足第二预设条件的步骤以循环监控所述熔断服务,直至所述熔断服务终止。
5.根据权利要求4所述服务控制方法,其特征在于,所述迭代上述过程以循环监控所述熔断服务,直至所述熔断服务终止的步骤之前,还包括:
判断所述熔断服务是否满足第三预设条件;
若所述熔断服务满足所述第三预设条件,对所述熔断服务返回默认值,并终止所述熔断服务。
6.一种服务控制装置,其特征在于,包括:
获取单元,用于获取可熔断服务列表中包含的可熔断服务;
第一判断单元,用于判断所述可熔断服务是否满足第一预设条件;
熔断单元,用于若所述可熔断服务满足所述第一预设条件,通过分布式开关中所述可熔断服务所对应的开关将所述可熔断服务设置为熔断,以将所述可熔断服务设置为熔断服务,并添加至熔断服务队列中,所述熔断服务队列指由所述熔断服务组成的队列;
第一迭代单元,用于若所述可熔断服务不满足所述第一预设条件,迭代上述过程以循环监控所述可熔断服务,直至所述可熔断服务终止。
7.根据权利要求6所述服务控制装置,其特征在于,所述服务控制装置还包括:
添加单元,用于将可熔断服务添加至循环队列-链表以形成可熔断服务列表。
8.根据权利要求6所述服务控制装置,其特征在于,所述第一判断单元包括:
第一判断子单元,用于判断所述可熔断服务的无响应次数是否超过预设次数,所述无响应次数是指服务器对所述可熔断服务未响应的次数;
第一判定子单元,用于若所述可熔断服务的所述无响应次数超过所述预设次数,判定所述可熔断服务满足第一预设条件。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器以及与所述存储器相连的处理器;所述存储器用于存储计算机程序;所述处理器用于运行所述存储器中存储的计算机程序,以执行如权利要求1-5任一项所述服务控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行如权利要求1-5中任一项所述服务控制方法的步骤。
CN201911107684.4A 2019-11-13 2019-11-13 服务控制方法、装置、计算机设备及计算机可读存储介质 Pending CN110837431A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911107684.4A CN110837431A (zh) 2019-11-13 2019-11-13 服务控制方法、装置、计算机设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911107684.4A CN110837431A (zh) 2019-11-13 2019-11-13 服务控制方法、装置、计算机设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN110837431A true CN110837431A (zh) 2020-02-25

Family

ID=69574853

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911107684.4A Pending CN110837431A (zh) 2019-11-13 2019-11-13 服务控制方法、装置、计算机设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110837431A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290696A (zh) * 2020-02-26 2020-06-16 平安银行股份有限公司 一种应用程序组件的流控方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120210335A1 (en) * 2011-02-14 2012-08-16 General Electric Company Method, system and computer program product for a client application programming interface (api) in a service oriented architecture
CN108712309A (zh) * 2018-06-11 2018-10-26 郑州云海信息技术有限公司 一种微服务架构下的微服务节点防护方法和系统
CN109684105A (zh) * 2018-12-18 2019-04-26 中国平安人寿保险股份有限公司 在微服务架构下对请求进行控制的方法、设备和存储介质
CN109743367A (zh) * 2018-12-24 2019-05-10 青岛海信智能商用系统股份有限公司 服务处理方法、装置、电子设备及可读存储介质
CN109766210A (zh) * 2019-01-17 2019-05-17 多点生活(成都)科技有限公司 服务熔断控制方法、服务熔断控制装置和服务器集群

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120210335A1 (en) * 2011-02-14 2012-08-16 General Electric Company Method, system and computer program product for a client application programming interface (api) in a service oriented architecture
CN108712309A (zh) * 2018-06-11 2018-10-26 郑州云海信息技术有限公司 一种微服务架构下的微服务节点防护方法和系统
CN109684105A (zh) * 2018-12-18 2019-04-26 中国平安人寿保险股份有限公司 在微服务架构下对请求进行控制的方法、设备和存储介质
CN109743367A (zh) * 2018-12-24 2019-05-10 青岛海信智能商用系统股份有限公司 服务处理方法、装置、电子设备及可读存储介质
CN109766210A (zh) * 2019-01-17 2019-05-17 多点生活(成都)科技有限公司 服务熔断控制方法、服务熔断控制装置和服务器集群

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黄强文等: "基于Spring Cloud和Docker的分布式微服务架构设计", 《微型电脑应用》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290696A (zh) * 2020-02-26 2020-06-16 平安银行股份有限公司 一种应用程序组件的流控方法及装置

Similar Documents

Publication Publication Date Title
US9965188B2 (en) Memory cleaning method and apparatus, and terminal device
CN106997314B (zh) 用于分布式系统的异常处理方法、装置及系统
CN108712309A (zh) 一种微服务架构下的微服务节点防护方法和系统
CN111459750A (zh) 基于非扁平网络的私有云监控方法、装置、计算机设备及存储介质
CN108572898B (zh) 一种控制接口的方法、装置、设备、以及存储介质
CN110753112A (zh) 云服务的弹性伸缩方法和装置
KR20150111952A (ko) 계층적 데이터 구조의 노드 상에서 재귀적 이벤트 리스너를 사용하기 위한 방법 및 시스템
CN110826799B (zh) 业务预测方法、装置、服务器及可读存储介质
CN113656168A (zh) 一种流量的自动容灾和调度的方法、系统、介质和设备
CN112383585A (zh) 消息处理系统、方法及电子设备
CN113067875A (zh) 基于微服务网关动态流控的访问方法和装置以及设备
CN111342986B (zh) 分布式节点管理方法及装置、分布式系统、存储介质
CN111611057A (zh) 分布式重试方法、装置、电子设备和存储介质
CN109495543B (zh) 一种ceph集群中监视器的管理方法及装置
CN111949421B (zh) Sdk调用方法、装置、电子设备和计算机可读存储介质
US9317355B2 (en) Dynamically determining an external systems management application to report system errors
CN107426012B (zh) 一种基于超融合架构的故障恢复方法及其装置
CN110837431A (zh) 服务控制方法、装置、计算机设备及计算机可读存储介质
JP6501924B2 (ja) アラートを解除する方法及びサーバー
US20230359514A1 (en) Operation-based event suppression
US20170149893A1 (en) Metadata server, network device and automatic resource management method
CN109587218B (zh) 一种集群选举的方法和装置
CN116633766A (zh) 故障处理方法、装置、电子设备及存储介质
CN110752972A (zh) 一种网卡状态监控方法、装置、设备及介质
CN114285844A (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