System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于云计算,尤其涉及一种基于深度学习的自适应心跳检测方法及系统。
技术介绍
1、随着互联网和云原生时代的兴起,各行各业对于服务性能、容错性以及可用性的要求日益提高。然而,单一计算机已经难以满足这些要求,因此分布式系统应运而生。分布式系统通过将任务、数据和负载分配到多个节点上,充分利用集群中的资源,以提供更出色的性能和可扩展性。
2、在分布式系统中,集群由多台计算机节点构成,共同协作以实现高可用性、高性能和可扩展性的解决方案。为了维护分布式系统的稳定性、可用性和一致性,业界普遍采用心跳机制来助力系统监测和响应节点故障,从而实现迅速的故障恢复。此外,在一致性协议中,心跳机制也发挥着维持状态同步的重要作用。在这一机制中,数据节点通常定期向管理节点发送心跳信号,以确保系统之间保持稳定的通信和数据传输。这有助于及时检测和处理潜在的故障或连接断开情况。
3、通常情况下,心跳机制所使用的心跳超时时间是固定的。然而,在规模化的集群环境中,面临网络抖动、通信延迟以及通信阻塞等多种问题。在这种情况下,采用固定的心跳超时时间可能导致资源浪费、故障检测的延迟、难以适应动态变化、可能的拥堵风险以及难以调优等一系列问题,这些问题极大地影响了分布式存储系统的读写处理效率。
4、目前,自回归移动平均(autoregressive moving average model,arma)模型和指数加权移动平均(exponential weighted moving average,ewma)模型可以对心跳超时时间进行一定
5、然而,当前的动态调整方案(1)难以有效捕捉时间序列中的长短期依赖。真实世界中的时间序列往往同时存在长短期重复性的模式。例如,分布式系统在单位时间内的用户请求量往往有每小时、每日和每月的流量模式,不同的流量模式下将产生与之相应的心跳延时序列模式。(2)不适用于非平稳的时间序列。时间序列中的概念漂移将导致模型性能急剧下降。例如,分布式系统中服务的用户请求量随产品的热度呈现明显的趋势特征。(3)无法充分利用系统中的性能指标数据。举例来说,系统负载的突然波动可能导致响应时间增加,系统资源短缺(如内存和cpu)会影响节点的响应速度,但这些影响因素在传统算法中很难得到有效处理。
技术实现思路
1、鉴于以上现有技术的不足,专利技术的目的在于提供一种基于深度学习的自适应心跳检测方法及系统,充分利用日志采集时间、心跳传输时延和系统性能指标数据,通过基于transformer的深度学习模型,有效捕捉时间序列中的长短期依赖关系,即使是非平稳的时间序列,也能准确地预测出点对点单向心跳时延,进而根据点对点单向心跳时延预测结果自适应地确定分布式系统中不同类型节点的心跳超时时间,准确判断各个节点是否发生失效,兼顾了快速故障恢复,同时提高了服务的资源利用率,降低了整体能耗,增强了云计算服务的稳定性。
2、本专利技术的第一方面,提出了一种基于深度学习的自适应心跳检测方法,包括:
3、s1,采集点对点单向心跳时延日志和系统性能指标数据;
4、s2,对所述点对点单向心跳时延日志进行预处理,从所述心跳时延日志中抽取日志采集时间和心跳传输时延;
5、s3,将所述心跳传输时延、所述日志采集时间和所述系统性能指标数据组成多变量时序序列集合,其中,所述多变量时序序列集合包括多个点对点单向心跳时序序列,所述点对点单向心跳时序序列包括多个按照所述日志采集时间进行排序的元祖;
6、s4,将所述多变量时序序列集合输入至基于transformer的深度学习模型;
7、s5,计算所述多变量时序序列中的各个元祖的多个向量表征;
8、s6,对多个所述向量表征进行融合,得到各个元祖的最终向量表征;
9、s7,根据所述最终向量表征,对所述基于transformer的深度学习模型进行训练;
10、s8,采集实时点对点单向心跳时延日志和系统性能指标数据,通过训练完成的所述基于transformer的深度学习模型,输出点对点单向心跳时延预测结果;
11、s9,根据所述点对点单向心跳时延预测结果,确定心跳超时时间;
12、s10,比较当前心跳时延与所述心跳超时时间之间的偏差是否超过阈值;若是,产生心跳超时事件;
13、s11,当产生心跳超时事件时,根据重新采集的心跳时延序列,重新预测并计算新的心跳超时时间,修改相应的心跳超时时间,并快速重发心跳,当出现连续心跳超时事件时,确认节点失效。
14、进一步地,在所述s5之前,还包括:
15、通过滚动固定窗口,从所述多变量时序序列集合中采样出子序列。
16、进一步地,所述s5具体为:
17、计算第i个子序列中第k个元祖的心跳时延时间、日志采集时间、系统性能指标、元组位于子序列中位置以及子序列位于序列中的位置的向量表征,分别记为ez,i,k、et,i,k、ep,i,k、epos,i,k和eloc,i,k。
18、进一步地,所述s6具体为:
19、对心跳时延时间、日志采集时间、系统性能指标、元组位于子序列中位置以及子序列位于序列中的位置的向量表征ez,i,k、et,i,k、ep,i,k、epos,i,k和eloc,i,k进行融合,得到各个子序列中的各个元祖的最终向量表征ei,k。
20、进一步地,s7具体包括:
21、s701,将所述最终向量表征投影到多个子空间中;
22、s702,通过注意力函数生成每个注意力头在对应子空间上的向量表征;
23、s703,拼接每个注意力头输出的向量表征,通过线性映射对各个向量表征进行融合,得到输出向量表征;
24、s704,将前馈神经网络作用于所述输出向量表征:
25、ffn(x)=gelu(xw(1)+b(1))w(2)+b(2)
26、gelu(x)=xφ(x)
27、其中,ffn()表示前馈神经网络,x表示输出向量表征,gelu()表示高斯误差线性映射,w(1)表示第一仿射映射的权重,b(1)表示第一仿射映射的偏置项,w(2)表示第二仿射映射的权重,b(2)表示第二仿射映射的偏置项,φ(x)表示标准正态分布的累积分布函数;
28、s705,将所述前馈神经网络的输出,通过transformer层输入至预测模块中;
29、s706,通过所述预测模块输出点对点单向心跳时延预测结果。
30、进一步地,s9具体包括:
31、s901,设置固定窗口大小为2k,选取实时采集的点对点单向心跳时延日志中的后k个心跳时延数据以及所述点对点单向心跳时延预测结果中前k个预测心跳时延数据,构成混合心跳时延序列
32、s902,对所述混合心跳时延序列进行加权移动平均计算,得到心跳超时时间。
33、进一步地,s90本文档来自技高网...
【技术保护点】
1.一种基于深度学习的自适应心跳检测方法,其特征在于,包括:
2.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,在所述S5之前,还包括:
3.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,所述S5具体为:
4.根据权利要求3所述的基于深度学习的自适应心跳检测方法,其特征在于,所述S6具体为:
5.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,S7具体包括:
6.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,S9具体包括:
7.根据权利要求6所述的基于深度学习的自适应心跳检测方法,其特征在于,S902具体包括:
8.根据权利要求7所述的基于深度学习的自适应心跳检测方法,其特征在于,所述S9021具体为:
9.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,所述S11中修改相应的心跳超时时间具体为:
10.一种基于深度学习的自适应心跳检测系统,其特征在于,包括处理器和用于存储处理器
...【技术特征摘要】
1.一种基于深度学习的自适应心跳检测方法,其特征在于,包括:
2.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,在所述s5之前,还包括:
3.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,所述s5具体为:
4.根据权利要求3所述的基于深度学习的自适应心跳检测方法,其特征在于,所述s6具体为:
5.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,s7具体包括:
6.根据权利要求1所述的基于深度学习的自适应心跳检测方法,其特征在于,s9具体包括:...
【专利技术属性】
技术研发人员:刘浩林,郎桾侠,畅晨铭,薛强,程霄,何智勇,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。