一种微服务调用链的异常智能定位方法技术

技术编号:39577900 阅读:26 留言:0更新日期:2023-12-03 19:28
本发明专利技术提出一种微服务调用链的异常智能定位方法

【技术实现步骤摘要】
一种微服务调用链的异常智能定位方法、装置及存储介质


[0001]本专利技术涉及计算机微服务故障定位
,具体涉及一种微服务调用链的异常智能定位方法

装置及存储介质


技术介绍

[0002]在大规模分布式系统中,微服务架构已经成为一种流行的软件开发和部署方式

微服务架构通过将应用拆分为多个小型

自治的服务单元(微服务),来提高系统的灵活性和可伸缩性

然而,由于微服务之间复杂且多样化的调用关系,当出现故障或性能问题时,定位问题的根本原因变得困难且耗时,影响了运维效率和系统稳定性

[0003]传统的调用链分析方法存在一定局限性,需要依赖专业知识和经验,往往需要依赖单笔请求的
request_id
进行追踪,逐步排查,并尝试不同假设以找到问题所在

这种过程费时费力,容易导致故障排查时间延长

资源浪费和用户体验下降

[0004]因此,如何快速定位异常服务是技术人员面临的一项技术挑战


技术实现思路

[0005]本专利技术针对上述现有技术中一个或多个技术缺陷,提出了如下技术方案

[0006]一种微服务调用链的异常智能定位方法,该方法包括:数据获取步骤,从微服务系统中收集多个微服务的调用关系数据,其中每一个微服务作为调用关系中的一个节点,所述调用关系数据包括节点之间的调用方向

用频率以及性能参数;调用拓扑构建步骤,基于所述调用关系数据构建调用拓扑图,所述调用拓扑图中的每一个节点表示一个微服务,节点与被调用节点之间为一条有向边,所述有向边的权重基于所述调用频率以及性能参数确定;异常定位步骤,使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合,基于根因分析方法从所述异常微服务候选集合中定位异常微服务

[0007]更进一步地,调用拓扑构建步骤的操作为:根据所述调用关系数据构建初始调用拓扑图,在所述初始调用拓扑图中查找相同功能的节点,将相同功能的节点进行合并,并删除与所述调用链不相关的节点,减少噪音和冗余信息,并根据所述调用关系数据,推断可能存在的未记录的调用关系,并添加缺失的边,根据调用频率以及性能参数确定所述有向边的权重,得到调用拓扑图,其中,所述性能参数为调用的时延

[0008]更进一步地,定位异常微服务后发出告警信息,所述告警信息为提示消息

声音或短信

[0009]更进一步地,所述根据调用频率以及性能参数确定所述有向边的权重的方式为:;
,;其中,
N≥2
,表示调用拓扑图中的节点总数量,表示节点
i
与节点
j
之间有向边的权重,表示节点
i
调用节点
j
的频率,表示节点
i
调用节点
j
的时延

[0010]更进一步地,所述使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合的操作为:使用
Pagerank
算法基于所述调用拓扑图中的有向边的权重计算节点
i
的第一异常度值;使用孤立森林算法基于所述调用拓扑图中的各节点的调用路径长度计算节点
i
的第一异常度值;将所述第一异常度值和第一异常度值的平均值作为节点
i
的异常度值,将所有的异常度值进行降序排列,选择前
M
个异常度值对应的微服务作为异常微服务候选集合,其中
M≤N。
[0011]更进一步地,所述基于根因分析方法从所述异常微服务候选集合中定位异常微服务的操作为:将所述异常微服务候选集合中的每个节点的异常度值
EX
k

节点角色
NS
k

调用频率
f
k
和异常传播路径
R
k
组成一维向量
V
k
=[EX
k
、NS
k
、f
k
、R
k
],基于所述一维向量计算异常矩阵
M
k
=V
kT
×
V
k
,计算出异常矩阵的特征值,将异常微服务候选集合中异常矩阵的特征值最大的微服务定位为异常微服务,其中,
NS
k
取值为0或1,0表示调用节点,1表示被调用节点

[0012]本专利技术还提出了一种微服务调用链的异常智能定位装置,该装置包括:数据获取单元,从微服务系统中收集多个微服务的调用关系数据,其中每一个微服务作为调用关系中的一个节点,所述调用关系数据包括节点之间的调用方向

调用频率以及性能参数;调用拓扑构建单元,基于所述调用关系数据构建调用拓扑图,所述调用拓扑图中的每一个节点表示一个微服务,节点与被调用节点之间为一条有向边,所述有向边的权重基于所述调用频率以及性能参数确定;异常定位单元,使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合,基于根因分析装置从所述异常微服务候选集合中定位异常微服务

[0013]更进一步地,调用拓扑构建单元的操作为:根据所述调用关系数据构建初始调用拓扑图,在所述初始调用拓扑图中查找相同功能的节点,将相同功能的节点进行合并,并删除与所述调用链不相关的节点,减少噪音和冗余信息,并根据所述调用关系数据,推断可能存在的未记录的调用关系,并添加缺失的边,根据调用频率以及性能参数确定所述有向边的权重,得到调用拓扑图,其中,所述性能参数为调用的时延

[0014]更进一步地,定位异常微服务后发出告警信息,所述告警信息为提示消息

声音或短信

[0015]更进一步地,所述根据调用频率以及性能参数确定所述有向边的权重的方式为:;,;其中,
N≥2
,表示调用拓扑图中的节点总数量,表示节点
i
与节点
j
之间有
向边的权重,表示节点
i
调用节点
j
的频率,表示节点
i
调用节点
j
的时延

[0016]更进一步地,所述使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合的操作为:使用
Pagerank
算法基于所述调用拓扑图中的有向边的权重计算节点
i
的第一异常度值;使用孤立森林算法基于所述调用拓扑图中的各节点的调用路径长度计算节点
i
的第一异常度本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种微服务调用链的异常智能定位方法,其特征在于,该方法包括:数据获取步骤,从微服务系统中收集多个微服务的调用关系数据,其中每一个微服务作为调用关系中的一个节点,所述调用关系数据包括节点之间的调用方向

调用频率以及性能参数;调用拓扑构建步骤,基于所述调用关系数据构建调用拓扑图,所述调用拓扑图中的每一个节点表示一个微服务,节点与被调用节点之间为一条有向边,所述有向边的权重基于所述调用频率以及性能参数确定;异常定位步骤,使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合,基于根因分析方法从所述异常微服务候选集合中定位异常微服务
。2.
根据权利要求1所述的方法,其特征在于,调用拓扑构建步骤的操作为:根据所述调用关系数据构建初始调用拓扑图,在所述初始调用拓扑图中查找相同功能的节点,将相同功能的节点进行合并,并删除与所述调用链不相关的节点,减少噪音和冗余信息,并根据所述调用关系数据,推断可能存在的未记录的调用关系,并添加缺失的边,根据调用频率以及性能参数确定所述有向边的权重,得到调用拓扑图,其中,所述性能参数为调用的时延
。3.
根据权利要求2所述的方法,其特征在于,定位异常微服务后发出告警信息,所述告警信息为提示消息

声音或短信
。4.
根据权利要求3所述的方法,其特征在于,所述使用
Pagerank
算法和孤立森林算法基于所述调用拓扑图确定异常微服务候选集合的操作为:使用
Pagerank
算法基于所述调用拓扑图中的有向边的权重计算节点
i
的第一异常度值;使用孤立森林算法基于所述调用拓扑图中的各节点的调用路径长度计算节点
i
的第一异常度值;将所述第一异常度值和第一异常度值的平均值作为节点
i
的异常度值,将所有的异常度值进行降序排列,选择前
M
个异常度值对应的微服务作为异常微服务候选集合,其中
M≤N。5.
根据权利要求4所述的方法,其特征在于,所述基于根因分析方法从所述异常微服务候选集合中定位异常微服务的操作为:将所述异常微服务候选集合中的每个节点的异常度值
EX
k

节点角色
NS
k

调用频率
f
k
和异常传播路径
R
k
组成一维向量
V
k
=[EX
k
、NS
k
、f
k
、R
k

【专利技术属性】
技术研发人员:刘兴顺王胜辉文吉赵春伟
申请(专利权)人:畅捷通信息技术股份有限公司
类型:发明
国别省市:

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

1