【技术实现步骤摘要】
性能瓶颈感知的微服务弹性伸缩方法及系统
[0001]本专利技术涉及软件工程微服务
,具体是涉及一种性能瓶颈感知的微服务弹性伸缩方法及系统。
技术介绍
[0002]云原生+微服务的软件架构为现代软件开发带来了便利,但是随着微服务规模的不断扩大,微服务之间交互变得越来越复杂,性能异常频发,治理这样一个庞大的系统变得越来越困难。人工维护这种多团队开发的大体量软件架构显得不切实际,随着可观测性技术的发展,海量异构的监控数据可以实时获取,根据这些数据进行故障分析,弹性伸缩以及负载均衡等任务是云原生时代微服务智能运维和治理的主要内容。
[0003]弹性伸缩一直是云计算中的热点问题,学术界和工业界已经有许多针对虚拟机或容器等云上资源的弹性伸缩方法,微服务的弹性伸缩则还需要考虑微服务之间的影响关系;根因定位可以在微服务的弹性伸缩中快速定位瓶颈服务,减少决策时间和决策范围。
[0004]微服务弹性伸缩的现有工作的方法主要从以下角度出发:
[0005](1)基于启发式规则,比如基于资源阈值和特定规则的KHPA,Libra,KHPA
‑
A和PEMA;
[0006](2)基于对微服务建模,对微服务进行建模可以预测和评估在特定资源配置和负载下的
[0007]微服务状态,对微服务环境的建模有多种方式,比如排队模型,以及图神经网络,J Park等人提出的GRAF采用消息传递网络对所有微服务的延时进行回归预测,然后基于梯度下降方法进行优化决策;
[0008](3)基于控制理论, ...
【技术保护点】
【技术特征摘要】
1.一种性能瓶颈感知的微服务弹性伸缩方法,其特征在于,包括以下步骤:获取微服务的多源指标数据,存储多源指标数据为时序数据并根据多源指标数据构建微服务依赖关系图;根据微服务依赖关系图,实时检测微服务多源指标数据的异常行为,获取异常微服务集合;利用微服务的异常聚集效应和异常传播特性,在异常微服务集合中定位瓶颈服务;基于遗传算法对各瓶颈服务进行实例数优化,获取微服务系统最终的弹性伸缩决策。2.如权利要求1所述的性能瓶颈感知的微服务弹性伸缩方法,其特征在于,所述获取微服务的多源指标数据,存储多源指标数据为时序数据并根据多源指标数据构建微服务依赖关系图的步骤,具体包括以下步骤:基于服务网格技术代理微服务的交互流量,通过监控和聚合收集微服务系统中交互流量产生的多源指标数据;将收集的多源指标数据存储在时序数据库中,并根据多源指标数据的端点服务信息构建微服务依赖关系图。3.如权利要求1所述的性能瓶颈感知的微服务弹性伸缩方法,其特征在于,所述异常微服务集合包括资源不足的微服务和资源冗余的微服务,所述根据微服务依赖关系图,实时检测微服务多源指标数据的异常行为,获取异常微服务集合的步骤,具体包括以下步骤:根据微服务依赖关系图,将微服务的多源指标数据进行SLO违背检测(服务水平目标)检测,获取SLO违背检测结果;当检测到SLO违背的微服务时,筛选出违背SLO的微服务;当未检测到SLO违背的微服务时,通过假设检验检查所有微服务的负载变化情况,识别出资源冗余的微服务。4.如权利要求2所述的性能瓶颈感知的微服务弹性伸缩方法,其特征在于,所述利用微服务的异常聚集效应和异常传播特性,在异常微服务集合中定位瓶颈服务的步骤,具体包括以下步骤:利用微服务的异常聚集效应,根据下式,获取异常微服务集合的相邻异常聚集分数iScore和一跳异常聚集分数xScore:iScore和一跳异常聚集分数xScore:其中,AAN(V
i
)代表微服务V
i
的相邻异常节点集合,NHAN(V
i
)代表微服务V
i
的下一跳的异常节点集合,Degree(V
i
)代表微服务V
i
的度数,AS(V
i
)代表微服务V
i
的异常分数;将获取的iScore和xScore根据下式,计算获取异常微服务集合的异常聚集分数ixScore:ixScore(V
i
)=iScore(V
i
)+xScore(V
i
);其中,V
i
为微服务依赖关系图上第i个微服务节点;构建异常微服务集合的依赖关系图,在异常微服务集合的依赖关系图进行异常传播模
拟,并根据异常聚集分数,获取异常微服务集合的依赖关系图上的各微服务的性能瓶颈概率,选择预设个排前概率的微服务作为瓶颈服务。5.如权利要求1所述的性能瓶颈感知的微服务弹性伸缩方法,其特征在于,所述步骤S4、基于遗传算法对各瓶颈服务进行实例数优化,获取微服务系统最终的弹性伸缩决策的步骤,具体包括以下步骤:根据微服务的历史数据训练构建SLO违背预测模型;将所有微服务实例数和微服务负载输入SLO违背预测模型,模拟线上应用反馈结果获取所有服务的模拟线上应用反馈结果;根据所有服务的模拟线上应用反馈结果,基于遗传算法对各瓶颈服务进行实例数优化,获取微服务系统最终的弹性伸缩决策。6.如权利要求5所述的性能瓶颈感知的微服务弹性伸缩方法,其特征在于,所述根据各瓶颈服务的模拟线上应用反馈结果,基于遗传算法对各瓶颈服务进行实例数优化,获取微服务系统最终的弹性伸缩决策弹性伸缩决策的步骤,具体包括以下步骤:将所有服务经...
【专利技术属性】
技术研发人员:李兵,谢帅宇,王健,张泽锟,常佳鑫,
申请(专利权)人:武汉大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。