CN112540895A - 一种微服务治理方法、装置及设备 - Google Patents

一种微服务治理方法、装置及设备 Download PDF

Info

Publication number
CN112540895A
CN112540895A CN201910894397.6A CN201910894397A CN112540895A CN 112540895 A CN112540895 A CN 112540895A CN 201910894397 A CN201910894397 A CN 201910894397A CN 112540895 A CN112540895 A CN 112540895A
Authority
CN
China
Prior art keywords
micro
service
micro service
list
abnormal
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
CN201910894397.6A
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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201910894397.6A priority Critical patent/CN112540895A/zh
Publication of CN112540895A publication Critical patent/CN112540895A/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/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • 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
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • 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/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供一种微服务治理方法、装置及设备,涉及计算机技术领域,用于降低微服务的运行状态的监测成本。该方法包括:周期性的获取第一微服务列表,第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,第二微服务列表包括分布式系统中所有微服务的标识;若在第一微服务列表中未查找到第一微服务的标识,则将第一微服务的异常次数增加n,n为正整数;若在第一微服务列表中查找到了第二微服务的标识,则将第二微服务的异常次数清零;根据各个微服务的异常次数对各个微服务进行治理。本发明实施例用于治理微服务。

Description

一种微服务治理方法、装置及设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种微服务治理方法、装置及设备。
背景技术
微服务是一种架构风格,一个大型复杂软件应用一般由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的,每个微服务仅关注于完成一件任务。
微服务架构是现下比较热门的架构风格,微服务架构下的各个微服务直接耦合度低,能单独部署也可以横向扩容,但是服务的治理和监控是比较复杂的。在由多个微服务构成的分布式系统中,当一个或多个微服务无法正常运行时,可能影响整个分布式系统上线,因此对微服务的运行状态的监测以及根据监测结果对微服务进行治理显得尤为重要。现有的技术普遍使用的微服务监测方法为:分布式系统中上线部署微服务时,开发人员通过spring-could的admin看板查看微服务的运行是否正常,通过spring-could的admin看板可以实时查看某个服务微的状态是否正常。然而,现有技术中这种微服务微服务的运行状态的监测方法需要开发人员一直盯着spring-could的admin看板,费时费力,成本较高。
发明内容
有鉴于此,本发明实施例提供一种微服务治理方法、装置及设备,用于降低微服务的运行状态的监测成本。
为了实现上述目的,本发明实施例提供技术方案如下:
第一方面,本发明实施例提供一种微服务治理方法,包括:
周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
若在第一微服务列表中未查找到第一微服务的标识,则将所述第一微服务的异常次数增加n,n为正整数;
若在第一微服务列表中查找到了第二微服务的标识,则将所述第二微服务的异常次数清零;
根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,所述周期性的获取第一微服务列表,包括:
周期性获取注册中心中的微服务的服务实例;
根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务;
基于当前所有活跃的微服务的标识生成所述第一微服务列表。
作为本发明实施例一种可选的实施方式,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
作为本发明实施例一种可选的实施方式,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
作为本发明实施例一种可选的实施方式,所述方法还包括:
当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,所述方法还包括:
当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量;
若注册中心中的所述第六微服务的服务实例的数量为零,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,所述周期性的获取第一微服务列表,包括:
以3分钟为周期,周期性的获取第一微服务列表。
作为本发明实施例一种可选的实施方式,所述方法还包括:
建立异常微服务字典;
所述异常微服务字典用于记录异常各个微服务的异常次数。
第二方面,本发明的实施例提供了一种微服务治理装置,包括:
获取单元,用于周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
查找单元,用于在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
处理单元,用于在第一微服务列表中未查找到第一微服务的标识时,将所述第一微服务的异常次数增加n,在第一微服务列表中查找到了第二微服务的标识,将所述第二微服务的异常次数清零,n为正整数;
治理单元,用于根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,所述获取单元,具体用于周期性获取注册中心中的微服务的服务实例,根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务,基于当前所有活跃的微服务的标识生成所述第一微服务列表。
作为本发明实施例一种可选的实施方式,所述治理单元,具体用于当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
作为本发明实施例一种可选的实施方式,所述治理单元,具体用于当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
作为本发明实施例一种可选的实施方式,所述处理单元,还用于当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,所述处理单元,还用于当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量,以及在所述注册中心中的所述第六微服务的服务实例的数量为零的情况下,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,所述获取单元,具体用于以3分钟为周期,周期性的获取第一微服务列表。
作为本发明实施例一种可选的实施方式,所述微服务治理装置还包括:
建立单元,用于建立异常微服务字典;
所述异常微服务字典用于记录异常各个微服务的异常次数。
第三方面,本发明实施例提供一种微服务治理设备,所述微服务治理设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述第一方面或第一方面的任一实施方式所述的微服务治理方法。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面或第一方面的任一实施方式所述的微服务治理方法。
本发明实施例提供的微服务治理方法,首先获取包括分布式系统中当前所有活跃的微服务的标识的第一微服务列表,然后在第一微服务列表中查找分布式系统中每一个微服务的标识;若在第一微服务列表中未查找到第一微服务的标识,则将所述第一微服务的异常次数增加n,若在第一微服务列表中查找到了第二微服务的标识,则将所述第二微服务的异常次数清零;最后基于各个微服务的异常次数对各个微服务进行治理;相比于现有技术中通过人工查看spring-could的admin看板监测微服务是否正常,本发明实施例不必开发人员一直观察spring-could的admin看板,而是可以自动的对各个微服务的状态进行巡检,因此本发明实施例可以降低微服务的运行状态的监测成本。
附图说明
图1为本发明实施例提供的微服务治理方法的流程示意图;
图2为本发明实施例提供的微服务治理装置的结构示意图之一;
图3为本发明实施例提供的微服务治理装置的结构示意图之二;
图4为本发明实施例提供的微服务治理设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。如果不加说明,本文中的“多个”是指两个或两个以上。
为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,以了“第一”、“第二”等字样对功能或作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定。
本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。在本发明实施例中,除非另有说明,“多个”的含义是指两个或者两个以上。
本发明实施例提供的微服务治理方法的执行主体可以为微服务治理装置,具体的微服务治理装置可以为手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、智能手表、智能手环等终端设备,或者该微服务治理装置还可以为其他类型的设备,本申请实施例不作限定。
本发明的实施例提供了一种微服务治理方法,具体的,参照图1所示,该微服务治理方法可以包括以下步骤:
S11、周期性的获取第一微服务列表。
所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识。
即,每间隔一定时间程度获取一次当前的微服务,并将当前活跃的微服务的标识组成第一微服务列表。
示例性的,所述周期性的获取第一微服务列表,包括:
以3分钟为周期,周期性的获取第一微服务列表。
即,每间隔3分钟获取一次第一微服务列表。
作为本发明实施例一种可选的实施方式,上述步骤S11中周期性的获取第一微服务列表可以包括如下步骤a至步骤c。
步骤a、周期性获取注册中心(例如可以为Eureka)中的微服务的服务实例。
步骤b、根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务。
在注册中心一个微服务可能包括多个服务实例,因此在获取注册中心中的微服务的服务实例后首先需要根据微服务的标识对所述服务实例进行去重,从而避免第一微服务列表中包括重复的微服务标识。
示例性的,微服务的标识可以为微服务的身份识别号(Identity document,ID)。
步骤c、基于当前所有活跃的微服务的标识生成所述第一微服务列表。
示例性的,第一微服务列表可以如下表1所示:
表1
微服务 标识
微服务1 0001
微服务2 0010
微服务4 0100
微服务5 0101
微服务7 0111
微服务8 1000
微服务9 1001
S12、在第一微服务列表中查找第二微服务列表中的每一个微服务的标识。
其中,所述第二微服务列表包括所述分布式系统中所有微服务的标识。
示例性的,第二微服务列表可以如下表2所示:
表2
微服务 标识
微服务1 0001
微服务2 0010
微服务3 0011
微服务4 0100
微服务5 0101
微服务6 0110
微服务7 0111
微服务8 1000
微服务9 1001
在上述步骤S12中,若在第一微服务列表中未查找到第一微服务的标识,则执行如下步骤S13。
S13、将所述第一微服务的异常次数增加n。
其中,n为正整数。
示例性的,n可以为1。
承上表1所示第一微服务列表和表2所示第二微服务列表所示,表2所示的第二微服务列表中的微服务3和微服务6无法在表1所示的第一微服务列表中查找到,因此微服务3和微服务6的异常次数增加n
在上述步骤S12中,若在第一微服务列表中查找到了第二微服务的标识,则执行如下步骤S14。
S14、将所述第二微服务的异常次数清零。
承上表1所示第一微服务列表和表2所示第二微服务列表所示,表2所示的第二微服务列表中的微服务1、微服务2、微服务4、微服务5、微服务7、微服务8以及微服务9可以在表1所示的第一微服务列表中查找到,因此将微服务1、微服务2、微服务4、微服务5、微服务7、微服务8以及微服务9的异常次数清零。
S15、根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,上述步骤S15中根据各个微服务的异常次数对各个微服务进行治理,包括:
当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
示例性的,当n为1时,第一阈值可以为3;即,当任一微服务的异常次数大于或等于3时,重启该微服务。
作为本发明实施例一种可选的实施方式,上述步骤S15中根据各个微服务的异常次数对各个微服务进行治理,包括:
当第四微服务的异常次数大于或等于第二阈值时,输出提示信息。
其中,所述提示信息用于提示对所述第四微服务的异常进行处理。
示例性的,当n为1时,第二阈值可以为5;当任一微服务的异常次数大于或等于5时,输出于提示对该微服务的异常进行处理的提示信息。
示例性的,第一提示信息可以为灯光和/或声音的报警信息,也可以为向管理员邮箱发送的提示邮件,还可以为在微服务治理装置的显示屏上显示文字信息等,本发明实施例中对第一提示信息的形式不做限定,以能够提示对所述第四微服务的异常进行处理为准。
本发明实施例提供的微服务治理方法,首先获取包括分布式系统中当前所有活跃的微服务的标识的第一微服务列表,然后在第一微服务列表中查找分布式系统中每一个微服务的标识;若在第一微服务列表中未查找到第一微服务的标识,则将所述第一微服务的异常次数增加n,若在第一微服务列表中查找到了第二微服务的标识,则将所述第二微服务的异常次数清零;最后基于各个微服务的异常次数对各个微服务进行治理;相比于现有技术中通过人工查看spring-could的admin看板监测微服务是否正常,本发明实施例不必开发人员一直观察spring-could的admin看板,而是可以自动的对各个微服务的状态进行巡检,因此本发明实施例可以降低微服务的运行状态的监测成本。
作为本发明实施例一种可选的实施方式,本发明实施例提供的微服务治理方法还包括:
当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
即,若监听到一个微服务在注册中心中注册,且该微服务的异常次数不为零,则将该微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,本发明实施例提供的微服务治理方法还包括:
当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量;
若注册中心中的所述第六微服务的服务实例的数量为零,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,上述微服务治理方法还包括:
建立异常微服务字典<appid,exception>;
其中,所述异常微服务字典用于记录异常各个微服务的异常次数。
具体的,异常微服务字典中可以仅记录异常次数不为零的微服务;即,当任一微服务的异常次数被清零时,将该微服务的标识从异常微服务字典中移除,而若任一微服务的异常次数由零变为n时,将该微服务的标识添加到微服务字典中,并记录该微服务的异常次数为n。
示例性的,微服务字典中记录的微服务的异常次数可以如下表3所示:
表3
微服务 标识 异常次数
微服务3 0011 n
微服务6 0110 3n
本申请实施例可以根据上述方法示例对终端设备等进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成单元的情况下,图2示出了上述实施例中所涉及的微服务治理装置的一种可能的结构示意图,该微服务治理装置200包括:
获取单元21,用于周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
查找单元22,用于在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
处理单元23,用于在第一微服务列表中未查找到第一微服务的标识时,将所述第一微服务的异常次数增加n,在第一微服务列表中查找到了第二微服务的标识,将所述第二微服务的异常次数清零,n为正整数;
治理单元24,用于根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,所述获取单元21,具体用于周期性获取注册中心中的微服务的服务实例,根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务,基于当前所有活跃的微服务的标识生成所述第一微服务列表。
作为本发明实施例一种可选的实施方式,所述治理单元24,具体用于当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
作为本发明实施例一种可选的实施方式,所述治理单元24,具体用于当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
作为本发明实施例一种可选的实施方式,所述处理单元23,还用于当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,所述处理单元23,还用于当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量,以及在所述注册中心中的所述第六微服务的服务实例的数量为零的情况下,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,所述获取单元21具体用于,以3分钟为周期,周期性的获取第一微服务列表。
参照图3所示,作为本发明实施例一种可选的实施方式,所述微服务治理装置200还包括:
建立单元25,用于建立异常微服务字典;
所述异常微服务字典用于记录异常各个微服务的异常次数。
本发明实施例提供的微服务治理装置包括:获取单元、查找单元、处理单元以及治理单元;其中,获取单元可以获取包括分布式系统中当前所有活跃的微服务的标识的第一微服务列表,查找单元可以在第一微服务列表中查找分布式系统中每一个微服务的标识;处理单元可以在第一微服务列表中未查找到第一微服务的标识时,将所述第一微服务的异常次数增加n,在第一微服务列表中查找到了第二微服务的标识时,将所述第二微服务的异常次数清零;治理单元可以基于各个微服务的异常次数对各个微服务进行治理;相比于现有技术中通过人工查看spring-could的admin看板监测微服务是否正常,本发明实施例不必开发人员一直观察spring-could的admin看板,而是可以自动的对各个微服务的状态进行巡检,因此本发明实施例可以降低微服务的运行状态的监测成本。
所述微服务治理装置包括处理器和存储器,上述获取单元、查找单元、处理单元单元、治理单元和建立单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来自动的对各个微服务的状态进行巡检,以降低微服务的运行状态的监测成本。
基于同一发明构思,本发明实施例还提供了一种微服务治理设备。图4为本发明实施例提供的微服务治理设备的结构示意图,如图4所示,本实施例提供的微服务治理设备包括:至少一个处理器41、以及与所述处理器41连接的至少一个存储器42、总线43;其中,所述处理器41、所述存储器42通过所述总线43完成相互间的通信;所述处理器41用于调用所述存储器42中的程序指令,以执行上述方法实施例所述的微服务治理方法。本文中的微服务治理设备可以是服务器、PC、PAD、手机等。
本实施例提供的微服务治理设备可以执行上述方法实施例提供的微服务治理方法,其实现原理与技术效果类似,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例所述的微服务治理方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述方法实施例所述的微服务治理方法。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
若在第一微服务列表中未查找到第一微服务的标识,则将所述第一微服务的异常次数增加n,n为正整数;
若在第一微服务列表中查找到了第二微服务的标识,则将所述第二微服务的异常次数清零;
根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,所述周期性的获取第一微服务列表,包括:
周期性获取注册中心中的微服务的服务实例;
根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务;
基于当前所有活跃的微服务的标识生成所述第一微服务列表。
作为本发明实施例一种可选的实施方式,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
作为本发明实施例一种可选的实施方式,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
作为本发明实施例一种可选的实施方式,所述方法还包括:
当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,所述方法还包括:
当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量;
若注册中心中的所述第六微服务的服务实例的数量为零,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,所述周期性的获取第一微服务列表,包括:
以3分钟为周期,周期性的获取第一微服务列表。
作为本发明实施例一种可选的实施方式,所述方法还包括:
建立异常微服务字典;
所述异常微服务字典用于记录异常各个微服务的异常次数。
第二方面,本发明的实施例提供了一种微服务治理装置,包括:
获取单元,用于周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
查找单元,用于在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
处理单元,用于在第一微服务列表中未查找到第一微服务的标识时,将所述第一微服务的异常次数增加n,在第一微服务列表中查找到了第二微服务的标识,将所述第二微服务的异常次数清零,n为正整数;
治理单元,用于根据各个微服务的异常次数对各个微服务进行治理。
作为本发明实施例一种可选的实施方式,所述获取单元,具体用于周期性获取注册中心中的微服务的服务实例,根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务,基于当前所有活跃的微服务的标识生成所述第一微服务列表。
作为本发明实施例一种可选的实施方式,所述治理单元,具体用于当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
作为本发明实施例一种可选的实施方式,所述治理单元,具体用于当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
作为本发明实施例一种可选的实施方式,所述处理单元,还用于当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
作为本发明实施例一种可选的实施方式,所述处理单元,还用于当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量,以及在所述注册中心中的所述第六微服务的服务实例的数量为零的情况下,则将所述第六微服务的异常次数增加n。
作为本发明实施例一种可选的实施方式,所述获取单元,具体用于以3分钟为周期,周期性的获取第一微服务列表。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在一个典型的配置中,设备包括一个或多个处理器(CPU)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种微服务治理方法,其特征在于,包括:
周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
若在第一微服务列表中未查找到第一微服务的标识,则将所述第一微服务的异常次数增加n,n为正整数;
若在第一微服务列表中查找到了第二微服务的标识,则将所述第二微服务的异常次数清零;
根据各个微服务的异常次数对各个微服务进行治理。
2.根据权利要求1所述的方法,其特征在于,所述周期性的获取第一微服务列表,包括:
周期性获取注册中心中的微服务的服务实例;
根据微服务的标识对所述服务实例进行去重,获取当前所有活跃的微服务;
基于当前所有活跃的微服务的标识生成所述第一微服务列表。
3.根据权利要求1所述的方法,其特征在于,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第三微服务的异常次数大于或等于第一阈值时,重启所述第三微服务。
4.根据权利要求1所述的方法,其特征在于,所述根据各个微服务的异常次数对各个微服务进行治理,包括:
当第四微服务的异常次数大于或等于第二阈值时,输出提示信息,所述提示信息用于提示对所述第四微服务的异常进行处理。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
当服务注册事件监听到第五微服务注册,且所述第五微服务的异常次数不为零的时,将所述第五微服务的异常次数清零。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
当服务下线事件监听到第六微服务下线时,获取所述注册中心中的所述第六微服务的服务实例的数量;
若注册中心中的所述第六微服务的服务实例的数量为零,则将所述第六微服务的异常次数增加n。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
建立异常微服务字典;
所述异常微服务字典用于记录各个异常微服务的异常次数。
8.一种微服务治理装置,其特征在于,包括:
获取单元,用于周期性的获取第一微服务列表,所述第一微服务列表包括分布式系统中当前所有活跃的微服务的标识;
查找单元,用于在第一微服务列表中查找第二微服务列表中的每一个微服务的标识,所述第二微服务列表包括所述分布式系统中所有微服务的标识;
处理单元,用于在第一微服务列表中未查找到第一微服务的标识时,将所述第一微服务的异常次数增加n,在第一微服务列表中查找到了第二微服务的标识,将所述第二微服务的异常次数清零,n为正整数;
治理单元,用于根据各个微服务的异常次数对各个微服务进行治理。
9.一种微服务治理设备,其特征在于,所述微服务治理设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1-7任一项所述的微服务治理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的微服务治理方法。
CN201910894397.6A 2019-09-20 2019-09-20 一种微服务治理方法、装置及设备 Pending CN112540895A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910894397.6A CN112540895A (zh) 2019-09-20 2019-09-20 一种微服务治理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910894397.6A CN112540895A (zh) 2019-09-20 2019-09-20 一种微服务治理方法、装置及设备

Publications (1)

Publication Number Publication Date
CN112540895A true CN112540895A (zh) 2021-03-23

Family

ID=75012458

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910894397.6A Pending CN112540895A (zh) 2019-09-20 2019-09-20 一种微服务治理方法、装置及设备

Country Status (1)

Country Link
CN (1) CN112540895A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766481A (zh) * 2022-12-05 2023-03-07 广州玖晔网络科技有限公司 一种微服务治理方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108282368A (zh) * 2018-01-24 2018-07-13 云宏信息科技股份有限公司 一种微服务管理系统、方法及计算机存储介质
CN108427581A (zh) * 2018-02-07 2018-08-21 平安普惠企业管理有限公司 系统微服务化方法及终端设备
CN108600005A (zh) * 2018-04-23 2018-09-28 国云科技股份有限公司 一种防御微服务雪崩效应的方法
US20190028496A1 (en) * 2017-07-19 2019-01-24 Cisco Technology, Inc. Anomaly detection for micro-service communications
CN109474685A (zh) * 2018-11-16 2019-03-15 中国银行股份有限公司 一种基于微服务架构下的服务监控方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190028496A1 (en) * 2017-07-19 2019-01-24 Cisco Technology, Inc. Anomaly detection for micro-service communications
CN108282368A (zh) * 2018-01-24 2018-07-13 云宏信息科技股份有限公司 一种微服务管理系统、方法及计算机存储介质
CN108427581A (zh) * 2018-02-07 2018-08-21 平安普惠企业管理有限公司 系统微服务化方法及终端设备
CN108600005A (zh) * 2018-04-23 2018-09-28 国云科技股份有限公司 一种防御微服务雪崩效应的方法
CN109474685A (zh) * 2018-11-16 2019-03-15 中国银行股份有限公司 一种基于微服务架构下的服务监控方法和系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766481A (zh) * 2022-12-05 2023-03-07 广州玖晔网络科技有限公司 一种微服务治理方法及系统
CN115766481B (zh) * 2022-12-05 2024-06-11 广州玖晔网络科技有限公司 一种微服务治理方法及系统

Similar Documents

Publication Publication Date Title
US10565077B2 (en) Using cognitive technologies to identify and resolve issues in a distributed infrastructure
US10529336B1 (en) Filtering sensitive information
US11620684B2 (en) Identification of targets for a campaign by referencing a blockchain and/or a distributed system file system
CN109408232B (zh) 一种基于交易流程的组件化总线调用执行系统
CN109445937B (zh) 一种组件化编程及无缝执行方法
CN110750530A (zh) 一种业务系统及其数据核对方法
US20170076205A1 (en) Dynamic problem statement with conflict resolution
CN112540895A (zh) 一种微服务治理方法、装置及设备
US10269078B2 (en) Network analysis of transaction data for target identification
CN109885431A (zh) 用于备份数据的方法和装置
CN116701053B (zh) 生产环境数据库的数据备份恢复方法、装置、设备及介质
US10176059B2 (en) Managing server processes with proxy files
CN112231192A (zh) 一种日志数据分析方法及装置
US11243742B2 (en) Data merge processing based on differences between source and merged data
CN110119430B (zh) 一种智能合约管理方法、服务器及计算机可读存储介质
CN109582476B (zh) 数据处理方法、装置及系统
CN110990878A (zh) 一种隐私数据衍生图的构建方法
CN114895879B (zh) 管理系统设计方案确定方法、装置、设备及存储介质
CN116244751A (zh) 数据脱敏方法、装置、电子设备、存储介质和程序产品
CN115221242A (zh) 一种数据同步方法、装置及计算机可读存储介质
CN105787359A (zh) 进程守护方法和装置
US20180166068A1 (en) Cloud And Name Optimized Speech Recognition
US20170228413A1 (en) Systems and methods for generating blueprints for enterprises
CN114723394A (zh) 基于人工智能的授信流程配置方法及相关设备
Pathak et al. A model for hybrid cloud integration: With a case study for IT service management (ITSM)

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