System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于图神经网络的微服务故障检测方法技术_技高网

一种基于图神经网络的微服务故障检测方法技术

技术编号:40468497 阅读:6 留言:0更新日期:2024-02-22 23:23
本发明专利技术属于人工智能运维领域,具体涉及一种基于图神经网络的微服务故障检测方法,包括在同一时间窗口内,获取微服务系统中每一微服务所在容器的服务调用时延、服务调用数量以及微服务系统性能指标数据;采用多层感知机处理每一微服务所在容器的服务调用时延和服务调用数量,得到每一微服务的调用时延隐特征;采用时间卷积网络处理每一微服务所在容器的微服务系统性能指标数据,得到微服务性能隐特征;将每一微服务的调用时延隐特征与微服务性能隐特征融合,得到每一微服务的融合服务节点向量;根据融合服务节点向量构建微服务系统的服务调用图;将服务调用图输入图注意神经网络,输出微服务系统的故障情况和根因定位情况;实现端到端的异常检测。

【技术实现步骤摘要】

本专利技术属于人工智能运维领域,具体涉及一种基于图神经网络的微服务故障检测方法


技术介绍

1、随着新的it产业革命的到来,互联网信息呈爆发式增长,同时对于海量、异构、大流量业务数据的需求也成为摆在it从业者面前的难题,此时云计算作为新一代的计算模式逐渐从理论走向实践。云计算技术,一种以一切为服务的概念,将人们从传统软件概念转移到了云计算的软件之下,云原生计算基金会(cncf,cloud native computing foundation)组织成立,其提出了云原生应用的三大特征:容器化、自动化、微服务;

2、其中,微服务是一种新型的软件组织架构,其核心概念是将单体架构应用拆分为一组逻辑甚至是空间上独立的微服务模块,注重于每个模块的功能拆分,每个模块处理独自的业务逻辑并可以灵活部署。各个微服务之间的通信则使用轻量级的通信协议。但是,在大型的微服务应用程序中,组成微服务的服务的数量甚至能达到上千个,每个微服务都有不同的功能和性能指标。当微服务系统中的关键性能指标发生异常时,需要运维人员面对大量的微服务进行故障排查以及后面的纷繁复杂微服务之间的关联关系,因此,如果微服务出现了故障,那么如何在海量的请求调用链中发现故障并定位故障发生的根本原因是重要的问题。


技术实现思路

1、为解决上述问题,本专利技术提供了一种基于图神经网络的微服务故障检测方法,包括以下步骤:

2、s1.在同一时间窗口内,获取微服务系统中每一微服务所在容器每一次请求的服务调用时延和服务调用数量,以及微服务系统性能指标数据;

3、s2.采用多层感知机处理每一微服务所在容器每一次请求的服务调用时延和服务调用数量,得到每一微服务所在容器每一次请求的调用时延隐特征;

4、s3.采用时间卷积网络处理每一微服务所在容器每一次请求的微服务系统性能指标数据,得到微服务性能隐特征;

5、s4.将每一微服务所在容器每一次请求的调用时延隐特征分别与微服务性能隐特征融合,得到每一微服务所在容器每一次请求的融合服务向量;

6、s5.根据融合服务向量构建微服务系统的服务调用图;

7、s6.将服务调用图输入图注意神经网络,输出微服务系统的故障情况和根因定位情况。

8、进一步的,步骤s2通过多层感知机处理每一微服务所在容器每一次请求的服务调用时延和服务调用数量,得到每一微服务所在容器每一次请求的调用时延隐特征,包括:

9、s21.将第i=1,2,…,m个微服务所在容器一次请求的服务调用数量和服务调用时延组合得到服务特征向量m为微服务数量;

10、s22.采用最大值最小值归一化处理服务特征向量xi,得到归一化服务特征向量

11、s23.将归一化服务特征向量输入l层感知机模型,得到调用时延隐特征

12、进一步的,步骤s3采用时间卷积网络处理每一微服务所在容器每一次请求的微服务系统性能指标数据,得到微服务性能隐特征,包括:

13、s31.若第i=1,2,…,m个微服务所在容器在q时刻发生一次请求,获取第i个微服务的微服务系统性能指标为x=[xq-1,xq-2,…,xq-t],xq-t为该微服务在第q-t个时间点的微服务系统性能指标数据;m为微服务数量;

14、s32.对微服务系统性能指标数据x进行差分处理,得到差分微服务系统性能指标数据δx=[δxq-1,δxq-2,…,δxq-t];

15、s33.对数据δx进行维度变换后输入时间卷积网络得到输出数据outδx,对输出数据outδx进行维度变换得到隐藏状态取隐藏状态中最后一个维度的最后一个向量作为第i个微服务所在容器此次请求的微服务性能隐特征

16、进一步的,将每一微服务所在容器每一次请求的调用时延隐特征与微服务性能隐特征融合,表示为:

17、

18、其中,α是可学习的参数,hi表示第i个微服务所在容器一次请求的融合服务向量,表示第i个微服务所在容器一次请求的微服务性能隐特征,表示第i个微服务所在容器一次请求的调用时延隐特征。

19、进一步的,步骤s5根据融合服务向量构建微服务系统的服务调用图g={v,e},v表示节点集合,每个节点代表一次请求,每次请求映射了一个微服务;e表示边集合,ei,j={vi,vj}∈e表示节点vi向节点vj发出一次请求。

20、进一步的,将服务调用图输入图注意神经网络,输出微服务系统的故障情况和根因定位情况,包括:

21、s61.根据融合服务向量,计算服务调用图中每一个节点与其每一个邻居节点的相似系数;

22、s62.基于相似系数计算每一节点与其每一个邻居节点的注意力分数;

23、s63.根据注意力分数,使用多头注意力机制计算每一节点的隐藏表示;

24、s64.使用全局注意力池化聚合所有节点的隐藏表示,得到聚合隐藏表示;

25、s65.重复步骤s61-s64,直至达到设定的gat层数,得到表征微服务系统的故障情况和根因定位情况的微服务全局表示。

26、进一步的,本专利技术采用混合交叉熵损失函数进行训练,其表示为:

27、

28、

29、

30、其中n是批次的数量,yi表示第i次的故障检测真实值,表示第i次的故障检测预测值;zi表示第i次的根因定位输出值,表示第i次标签值。

31、本专利技术的有益效果:

32、本文提出了一种基于图注意力神经网络的微服务故障检测方法,针对微服务中服务间复杂的调用模式,使用图神经网络学习微服务中复杂的调用关系,可以从中学习到隐含的信息进行故障检测,并同时可以进行根因定位,实现了端到端的异常检测。

33、本文采用图注意力网络gat并引入了节点级别的注意力机制,使得模型能够对不同节点的微服务请求节点分配不同的注意力权重。这使得模型能够更加灵活地捕捉微服务调用图中不同微服务之间的关系。还使用了时间卷积神经网络tcn处理了容器性能指标数据,tcn具有并行计算能力强、轻量化结构、可扩展性强的特点,在保持效率的情况下又提升了准确率。此外将调用时延和容器性能指标两种特征进行融合,能够全面考虑微服务的运行状态。

本文档来自技高网...

【技术保护点】

1.一种基于图神经网络的微服务故障检测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,步骤S2通过多层感知机处理每一微服务所在容器每一次请求的服务调用时延和服务调用数量,得到每一微服务所在容器每一次请求的调用时延隐特征,包括:

3.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,步骤S3采用时间卷积网络处理每一微服务所在容器每一次请求的微服务系统性能指标数据,得到微服务性能隐特征,包括:

4.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,将每一微服务所在容器每一次请求的调用时延隐特征与微服务性能隐特征融合,表示为:

5.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,步骤S5根据融合服务向量构建微服务系统的服务调用图G={V,E},V表示节点集合,每个节点代表一次请求,每次请求映射了一个微服务;E表示边集合,ei,j={vi,vj}∈E表示节点vi向节点vj发出一次请求。

6.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,将服务调用图输入图注意神经网络,输出微服务系统的故障情况和根因定位情况,包括:

7.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,本专利技术采用混合交叉熵损失函数进行训练,其表示为:

...

【技术特征摘要】

1.一种基于图神经网络的微服务故障检测方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,步骤s2通过多层感知机处理每一微服务所在容器每一次请求的服务调用时延和服务调用数量,得到每一微服务所在容器每一次请求的调用时延隐特征,包括:

3.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,步骤s3采用时间卷积网络处理每一微服务所在容器每一次请求的微服务系统性能指标数据,得到微服务性能隐特征,包括:

4.根据权利要求1所述的一种基于图神经网络的微服务故障检测方法,其特征在于,将每一微服务所在容器每一次请求的调用时延隐特征...

【专利技术属性】
技术研发人员:刘媛妮马云舰张建辉蒙科知张欣魏国柱
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

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

1