微服务治理方法、设备及存储介质技术

技术编号:39032541 阅读:9 留言:0更新日期:2023-10-10 11:45
本申请公开了一种微服务治理方法、设备及存储介质,属于微服务治理技术领域,本申请所述微服务包括多个服务节点,每个服务节点包括多个接口,当接收到测试指令时,获取所述各服务节点的链路日志;基于所述链路日志,得到各服务节点之间的调用关系数据,并基于所述调用关系数据构建服务调用拓扑;无需预先知晓微服务架构中的实际层级关系,不会导致前期的准备工作时间增长,基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,即可得到第一检测结果,从而能够基于所述第一检测结果确定所述微服务的第一治理方案。提升了微服务治理的效率。提升了微服务治理的效率。提升了微服务治理的效率。

【技术实现步骤摘要】
微服务治理方法、设备及存储介质


[0001]本申请涉及微服务治理
,尤其涉及一种微服务治理方法、设备及存储介质。

技术介绍

[0002]微服务是一种架构,一个应用软件一般由一个或多个微服务组成。应用软件中各个微服务可被独立部署,微服务架构下的各服务节点之间耦合度低,能单独部署也可以横向扩容,因此,微服务的治理(检测微服务架构下各服务节点是否存在问题,并解决)是比较复杂的。
[0003]目前,基于对微服务架构中的层级关系进行治理的方案,通常是基于预先搭建的微服务架构模型对微服务架构进行检测。但这种方式需要预先知晓微服务架构中的实际层级关系,而不同业务的实际层级关系错综负载,会导致前期的准备工作费时较长,降低了微服务的治理效率。

技术实现思路

[0004]本申请的主要目的在于提供一种微服务治理方法、设备及存储介质,旨在解决微服务的治理效率低下的技术问题。
[0005]为实现上述目的,本申请提供一种微服务治理方法,所述微服务包括多个服务节点,每个服务节点包括多个接口,包括以下步骤:
[0006]当接收到测试指令时,获取所述各服务节点的链路日志;
[0007]基于所述链路日志,得到各服务节点之间的调用关系数据,并基于所述调用关系数据构建服务调用拓扑;
[0008]基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果,以基于所述第一检测结果确定所述微服务的第一治理方案。
[0009]在本申请的一种可能的实施方式中,所述调用关系数据包括服务节点信息以及所述服务节点的接口调用信息,所述基于所述调用关系数据构建服务调用拓扑的步骤,包括:
[0010]基于所述服务节点信息以及所述服务节点的接口调用信息,通过图关系数据库构建服务调用拓扑,其中,所述服务节点信息中的各服务节点映射为图节点,所述接口调用信息映射为各图节点之间的边,所述接口调用信息中的接口调用方向映射为所述各图节点之间的边的方向。
[0011]在本申请的一种可能的实施方式中,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤,包括:
[0012]遍历所述服务调用拓扑中的各服务节点,得到所述各服务节点之间的目标调用关系;
[0013]判断所述目标调用关系中是否存在循环调用的第一调用关系,和/或者,筛选得到超过预设层数的第二调用关系及其对应链路,将所述第二调用关系与所述链路日志中对应
链路的调用关系进行比对;
[0014]若所述目标调用关系中存在第一调用关系,且,所述链路日志中对应链路存在循环调用的调用关系,则确定第一检测结果为所述链路调用存在问题;
[0015]若所述第二调用关系与所述链路日志中对应链路的调用关系不一致,则确定第一检测结果为所述链路调用存在问题。
[0016]在本申请的一种可能的实施方式中,所述遍历所述服务调用拓扑中的各服务节点,得到所述各服务节点之间的目标调用关系的步骤之后,所述方法还包括:
[0017]若所述目标调用关系中存在起始节点为同一服务节点,且中间节点存在相同服务节点的第三调用关系,则将所述第三调用关系对应链路从起始到结尾涉及的各服务节点和接口调用信息,与所述链路日志中对应链路的各服务节点和Api信息进行比对,得到比对结果;
[0018]若比对结果为不一致,则确定第一检测结果为所述链路调用存在问题。
[0019]在本申请的一种可能的实施方式中,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤之前,所述方法还包括:
[0020]获取所述各服务节点的运维数据,所述运维数据包括各服务节点的运行内存的申请配额、运行内存的使用率、CPU申请配额和CPU使用率;
[0021]基于所述运维数据,对所述多个服务节点的服务资源进行检测,得到第二检测结果,以基于所述第二检测结果确定所述微服务的第二治理方案;
[0022]所述基于所述运维数据,对所述多个服务节点的服务资源进行检测,得到第二检测结果,以基于所述第二检测结果确定所述微服务的第二治理方案的步骤,包括:
[0023]若所述服务节点的内存申请配额大于预设内存申请配额,且预设第一时段内最大运行内存的使用率小于预设内存使用率,则确定第一检测结果为所述服务节点内存占用率过高;
[0024]和/或者,若服务节点的CPU申请配额大于预设CPU申请配额,且预设第二时段内的最大使用率小于预设CPU使用率,则确定第一检测结果为所述服务节点CPU占用率过高。
[0025]在本申请的一种可能的实施方式中,所述运维数据还包括各服务节点的实例申请配额,所述基于所述运维数据,对所述多个服务节点的服务资源进行检测,得到第二检测结果,以基于所述第二检测结果确定所述微服务的第二治理方案的步骤之后,所述方法还包括:
[0026]若确定同一服务节点的内存占用率过高,且CPU占用率过高,则判断所述服务节点的实例申请配额是否大于预设个数;
[0027]若大于,则确定所述服务节点的第一检测结果为所述服务节点的实例部署过多。
[0028]在本申请的一种可能的实施方式中,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤之前,所述方法还包括:
[0029]获取各服务节点对外暴露的接口数量、接口请求量数据以及业务日志数据,所述业务日志数据包括所述链路日志;
[0030]基于所述各服务节点对外暴露的接口数量、接口请求量数据以及业务日志数据,
确定所述服务节点是否处于正常工作状态,并确定对所述服务节点进行检测得到的第三检测结果为所述服务节点处于正常工作状态和/或者处于停止服务状态。
[0031]在本申请的一种可能的实施方式中,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤之后,所述方法还包括:
[0032]将所述第一检测结果及其对应服务节点所在链路日志进行保存、展示,并将所述第一检测结果推送至操作人员;
[0033]若下一次对所述多个服务节点之间形成的链路进行检测之后得到的检测结果中不存在所述第一检测结果,则将所述第一检测结果及其对应服务节点所在链路日志删除。
[0034]本申请还提供一种微服务治理设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的微服务治理程序,所述微服务治理程序配置为实现如上述任一项所述的微服务治理方法的步骤。
[0035]本申请还提供一种存储介质,所述存储介质上存储有微服务治理程序,所述微服务治理程序被处理器执行时实现如上述任一项所述的微服务治理方法的步骤。
[0036]本申请提供一种微服务治理方法,相较于现有技术中需要预先知晓微服务架构中的实际层级关系,而不同业务的实际层级关系错综本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务治理方法,其特征在于,所述微服务包括多个服务节点,每个服务节点包括多个接口,包括以下步骤:当接收到测试指令时,获取所述各服务节点的链路日志;基于所述链路日志,得到各服务节点之间的调用关系数据,并基于所述调用关系数据构建服务调用拓扑;基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果,以基于所述第一检测结果确定所述微服务的第一治理方案。2.如权利要求1所述的微服务治理方法,其特征在于,所述调用关系数据包括服务节点信息以及所述服务节点的接口调用信息,所述基于所述调用关系数据构建服务调用拓扑的步骤,包括:基于所述服务节点信息以及所述服务节点的接口调用信息,通过图关系数据库构建服务调用拓扑,其中,所述服务节点信息中的各服务节点映射为图节点,所述接口调用信息映射为各图节点之间的边,所述接口调用信息中的接口调用方向映射为所述各图节点之间的边的方向。3.如权利要求1所述的微服务治理方法,其特征在于,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤,包括:遍历所述服务调用拓扑中的各服务节点,得到所述各服务节点之间的目标调用关系;判断所述目标调用关系中是否存在循环调用的第一调用关系,和/或者,筛选得到超过预设层数的第二调用关系及其对应链路,将所述第二调用关系与所述链路日志中对应链路的调用关系进行比对;若所述目标调用关系中存在第一调用关系,且,所述链路日志中对应链路存在循环调用的调用关系,则确定第一检测结果为所述链路调用存在问题;若所述第二调用关系与所述链路日志中对应链路的调用关系不一致,则确定第一检测结果为所述链路调用存在问题。4.如权利要求3所述的微服务治理方法,其特征在于,所述遍历所述服务调用拓扑中的各服务节点,得到所述各服务节点之间的目标调用关系的步骤之后,所述方法还包括:若所述目标调用关系中存在起始节点为同一服务节点,且中间节点存在相同服务节点的第三调用关系,则将所述第三调用关系对应链路从起始到结尾涉及的各服务节点和接口调用信息,与所述链路日志中对应链路的各服务节点和Api信息进行比对,得到比对结果;若比对结果为不一致,则确定第一检测结果为所述链路调用存在问题。5.如权利要求1所述的微服务治理方法,其特征在于,所述基于所述服务调用拓扑以及所述链路日志,对所述多个服务节点之间形成的链路进行检测,得到第一检测结果的步骤之前,所述方法还包括:获取所述各服务节点的运维数据,所述运维数据包括各服务节点的运行内存的申请配额、运行内存的使用率、CPU申请配额和CPU使用率;基于所述运维数据,对所述多个服务节点的服务资源进行...

【专利技术属性】
技术研发人员:刘俊坤孙胜黄宇梁
申请(专利权)人:招商银行股份有限公司
类型:发明
国别省市:

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

1