微服务异常处理方法、装置、设备、介质和程序产品制造方法及图纸

技术编号:32675250 阅读:17 留言:0更新日期:2022-03-17 11:31
本公开提供了一种应用于注册中心的微服务异常处理方法、装置、设备、介质和程序产品,该方法包括:监听M个微服务的状态,其中,所述M个微服务由N个节点注册至所述注册中心;在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点,所述运行信息包括所述异常状态的信息。所述第一节点被配置为:在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。本公开还提供了一种应用于第一节点的微服务异常处理方法、装置、设备、介质和程序产品。和程序产品。和程序产品。

【技术实现步骤摘要】
微服务异常处理方法、装置、设备、介质和程序产品


[0001]本公开涉及微服务领域,更具体地涉及一种微服务异常处理方法、装置、设备、介质和程序产品。

技术介绍

[0002]微服务架构指将某一复杂大应用拆分成一组小的微服务,各微服务之间协调配合通信。每个微服务都围绕着具体的业务进行构建,并且能够被独立的部署到生产环境、类生产环境等环境。
[0003]通常在微服务运行过程中,可能会出现异常情况。在某个微服务出现异常时,该微服务所属的应用无法正常提供对应的业务。那么需要人工去处理该微服务的异常情况,来让该微服务所属的应用恢复服务。
[0004]在实现本公开构思的过程中,专利技术人发现相关技术中至少存在如下问题:需要时刻安排相关人员进行值班,以防止可能会出现异常情况。另外,人工发现异常的时间有所延迟,不能及时进行异常处理。因此,人工处理微服务异常的方式存在浪费人力成本,异常处理效率低的问题。

技术实现思路

[0005]鉴于上述问题,本公开提供了一种自动化处理异常,提高处理效率的微服务异常处理方法、装置、设备、介质和程序产品。
[0006]本公开实施例的一个方面提供了一种微服务异常处理方法,应用于注册中心,包括:监听M个微服务的状态,其中,所述M个微服务由N个节点注册至所述注册中心,N和M分别为大于或等于1的整数;在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点,其中,所述运行信息包括所述异常状态的信息,第一节点为所述N个节点中的任一个,所述第一微服务为所述M个微服务中的任一个;其中,所述第一节点被配置为:在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。
[0007]根据本公开的实施例,所述在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点包括:将所述运行信息发送至消息中间件,以使所述第一节点基于从所述消息中间件获取的第一异常消息,来获得所述异常状态的信息,其中,所述第一异常消息与所述运行信息相对应。
[0008]根据本公开的实施例,所述异常状态包括误注册状态,所述监听M个微服务的状态包括监听所述第一微服务的状态,具体包括:获得所述第一微服务的注册信息;在所述注册信息符合注册告警条件的情况下,确定所述第一微服务为所述误注册状态。
[0009]根据本公开的实施例,所述注册信息包括注册所述第一微服务的节点信息、所述第一微服务的标识信息、注册次数中的至少一个,所述注册信息符合注册告警条件包括:所述节点服务器信息中存在告警字段;或基于预设告警表,确定所述标识信息与所述节点服
务器信息不具有对应关系,其中,所述预设告警表包括所述N个节点中任一节点服务器与至少一个微服务的对应关系;或基于所述预设告警表,确定所述第一微服务的注册次数超过限制次数,其中,所述预设告警表包括所述第一微服务的所述限制次数。
[0010]根据本公开的实施例,在所述第一微服务为误注册状态的情况下,所述将第一微服务的运行信息发送至所述消息中间件包括:将所述误注册状态的信息发送至所述消息中间件,以使所述第一节点基于所述误注册状态的信息调用对应的误注册处理脚本进行处理,其中,所述误注册状态的信息包括所述注册信息符合的注册告警条件信息。
[0011]根据本公开的实施例,所述异常状态包括下线状态,在所述第一微服务为下线状态的情况下,所述将第一微服务的运行信息发送至所述消息中间件包括:将所述下线状态的信息发送至所述消息中间件,以使所述第一节点基于所述下线状态的信息调用下线处理脚本,来重启所述第一微服务。
[0012]本公开实施例的另一方法提供了一种微服务异常处理方法,应用于第一节点,所述第一节点为N个节点中的任一个,所述N个节点用于注册M个微服务至注册中心服务器,所述方法包括:从所述注册中心获得第一微服务的运行信息,其中,所述第一微服务为所述M个微服务中的任一个,所述注册中心被配置为:监听所述M个微服务的状态,在所述第一微服务为异常状态的情况下,将所述运行信息通知给所述第一节点,所述运行信息包括所述异常状态的信息;在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。
[0013]根据本公开的实施例,所述从注册中心获得第一微服务的运行信息包括:从消息中间件获取第一异常消息,其中,所述第一异常消息与所述运行信息相对应;所述注册中心被配置为:在所述第一微服务为异常状态的情况下,将所述运行信息发送至所述消息中间件。
[0014]根据本公开的实施例,所述异常状态包括误注册状态,所述基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务包括:基于所述误注册状态的信息,确定所述误注册状态的类型,其中,所述误注册状态的类型包括节点类误注册和微服务类误注册中至少一个;基于所述误注册状态的类型,调用对应的误注册处理脚本进行处理。
[0015]根据本公开的实施例,所述基于所述误注册状态的类型,调用对应的误注册处理脚本进行处理包括:在所述误注册状态的类型为节点类误注册的情况下,调用对应的节点误注册处理脚本,以从所述注册中心中下线所述第一节点;或在所述误注册状态的类型为微服务类误注册的情况下,调用对应的微服务误注册处理脚本,以关闭所述第一微服务。
[0016]根据本公开的实施例,所述异常状态包括下线状态,基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务包括:基于所述下线状态的信息,调用下线处理脚本,来重启所述第一微服务。
[0017]本公开实施例的另一方面提供了一种应用于注册中心的微服务异常处理装置,包括:状态监听模块,用于监听M个微服务的状态,其中,所述M个微服务由N个节点注册至所述注册中心,N和M分别为大于或等于1的整数;信息通知模块,用于在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点,其中,所述运行信息包括所述异常状态的信息,第一节点为所述N个节点中的任一个,所述第一微服务为所述M个微服务中的任一个;其中,所述第一节点被配置为:在确定所述第一微服务由所述第一节点注册的情
况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。
[0018]本公开实施例的另一方面提供了一种应用于第一节点的微服务异常处理装置,所述第一节点为N个节点中的任一个,所述N个节点用于注册M个微服务至注册中心服务器,该装置包括:第一获得模块,用于从所述注册中心获得第一微服务的运行信息,其中,所述第一微服务为所述M个微服务中的任一个,所述注册中心被配置为:监听所述M个微服务的状态,在所述第一微服务为异常状态的情况下,将所述运行信息通知给所述第一节点,所述运行信息包括所述异常状态的信息;第二获得模块,用于在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;异常处理模块,用于基于所述异常状态的信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务异常处理方法,应用于注册中心,包括:监听M个微服务的状态,其中,所述M个微服务由N个节点注册至所述注册中心,N和M分别为大于或等于1的整数;在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点,其中,所述运行信息包括所述异常状态的信息,所述第一节点为所述N个节点中的任一个,所述第一微服务为所述M个微服务中的任一个;其中,所述第一节点被配置为:在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。2.根据权利要求1所述的方法,其中,所述在第一微服务为异常状态的情况下,将所述第一微服务的运行信息通知给第一节点包括:将所述运行信息发送至消息中间件,以使所述第一节点基于从所述消息中间件获取的第一异常消息,来获得所述异常状态的信息,其中,所述第一异常消息与所述运行信息相对应。3.根据权利要求2所述的方法,其中,所述异常状态包括误注册状态,所述监听M个微服务的状态包括监听所述第一微服务的状态,具体包括:获得所述第一微服务的注册信息;在所述注册信息符合注册告警条件的情况下,确定所述第一微服务为所述误注册状态。4.根据权利要求3所述的方法,其中,所述注册信息包括注册所述第一微服务的节点信息、所述第一微服务的标识信息、注册次数中的至少一个,所述注册信息符合注册告警条件包括:所述节点服务器信息中存在告警字段;或基于预设告警表,确定所述标识信息与所述节点服务器信息不具有对应关系,其中,所述预设告警表包括所述N个节点中任一节点服务器与至少一个微服务的对应关系;或基于所述预设告警表,确定所述第一微服务的注册次数超过限制次数,其中,所述预设告警表包括所述第一微服务的所述限制次数。5.根据权利要求4所述的方法,其中,在所述第一微服务为误注册状态的情况下,所述将第一微服务的运行信息发送至所述消息中间件包括:将所述误注册状态的信息发送至所述消息中间件,以使所述第一节点基于所述误注册状态的信息调用对应的误注册处理脚本进行处理,其中,所述误注册状态的信息包括所述注册信息符合的注册告警条件信息。6.根据权利要求2所述的方法,其中,所述异常状态包括下线状态,在所述第一微服务为下线状态的情况下,所述将第一微服务的运行信息发送至所述消息中间件包括:将所述下线状态的信息发送至所述消息中间件,以使所述第一节点基于所述下线状态的信息调用下线处理脚本,来重启所述第一微服务。7.一种微服务异常处理方法,应用于第一节点,所述第一节点为N个节点中的任一个,所述N个节点用于注册M个微服务至注册中心服务器,所述方法包括:从所述注册中心获得第一微服务的运行信息,其中,所述第一微服务为所述M个微服务
中的任一个,所述注册中心被配置为:监听所述M个微服务的状态,在所述第一微服务为异常状态的情况下,将所述运行信息通知给所述第一节点,所述运行信息包括所述异常状态的信息;在确定所述第一微服务由所述第一节点注册的情况下,获得所述异常状态的信息;基于所述异常状态的信息,调用对应的异常处理脚本处理所述第一微服务。8.根据权利要求7所述的方法,其中,所...

【专利技术属性】
技术研发人员:刘亚黄坤
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:

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

1