基于轨迹分析的微服务故障定位

微服务架构通过一组独立开发、独立部署且通过应用程序编程接口(API) 相互通信的松耦合服务来实现软件应用。由于其在并行开发、快速交付、灵活伸 缩等方面的优势,微服务架构已经成为云原生应用的主流选择。微服务系统运行 时环境具有高度的复杂性和动态性,且服务之间存在很多复杂的异步调用链,因 此微服务系统的故障分析和调试难以通过传统方法来实现,从而成为企业微服务 开发面临的一个重要挑战。

微服务系统作为一种新的基于云的软件系统形态,其软件故障特点还缺少相 应的总结,同时也缺少公开的微服务系统(如开源项目)可供研究。为此,本文针对微服务系统开发实践进行了一次工业调研,系统了解了工业界微服务系统的 特点,收集了一组典型微服务故障案例以及相应的故障分析与调试实践方法,并 对实践问题和挑战进行了分析。在此基础上,我们开发了一个中等规模的微服务 基准系统,重现了 22 个工业故障案例,并通过开源社区进行了发布。基于这一 开源微服务基准系统以及相应的故障案例,我们开展了一系列微服务故障辅助定 位方法和技术研究。

首先,我们对业界广泛采用的基于微服务日志及执行轨迹可视化的故障定位 方法进行了研究。我们在分析和评估现有的工业界微服务调试实践的基础上,基 于已有的分布式可视化调试工具提出了多种微服务系统故障定位策略,构建了相 应的执行轨迹可视化分析工具并进行了实验分析。结果表明,采用适当的执行轨 迹可视化工具和策略可以改善目前微服务调试的工业实践,同时进一步的改进需 要数据驱动的智能化轨迹分析和可视化方法的支持。

其次,我们针对微服务系统在服务实例、环境配置、异步交互等方面存在复 杂故障因素组合,从而导致故障难以复现和定位的问题,提出了一种基于增量调 试算法的自动化微服务系统故障定位方法。该方法定义了多个维度的故障因素, 通过优化的故障因素组合搜索与试探执行高效地寻找导致一个给定故障的最小 故障因素集合,从而辅助开发人员进行故障定位。为此,我们还设计并实现了一 个系统基础设施层,用于支持增量调试过程中的微服务系统按需部署和运行控制。实验结果表明,该方法能够有效地识别导致故障的最小故障因素集合,为故障根 源诊断提供有效支持,同时其优化执行策略使得该方法具有良好的执行效率和可 伸缩性。

最后,我们针对微服务系统生产环境中的故障发现和定位问题,提出了一种 基于执行轨迹日志机器学习的微服务潜在错误与故障根源预测方法 MEPFL。该方 法从执行轨迹日志(一种特殊的微服务系统日志)中提取微服务故障相关的一些。特征,基于这些特征并通过故障注入的方式构建微服务故障预测模型,对微服务 的潜在错误、故障位置(所在微服务)和故障类型进行预测。该方法将执行轨迹 和微服务两个层次的模型相结合进行综合预测,从而适应不同的情况。实验结果 表明,MEPFL 在潜在错误、故障微服务和故障类型的预测方面具有较高的准确性, 并能有效地应用于工业界的真实故障案例。

成为VIP会员查看完整内容
28

相关内容

专知会员服务
15+阅读 · 2021年1月23日
专知会员服务
12+阅读 · 2020年12月17日
企业风险知识图谱的构建及应用
专知会员服务
93+阅读 · 2020年11月6日
专知会员服务
98+阅读 · 2020年10月31日
大规模时间序列分析框架的研究与实现,计算机学报
专知会员服务
58+阅读 · 2020年7月13日
最新《智能交通系统的深度强化学习》综述论文,22页pdf
前端微服务在字节跳动的落地之路
前端之巅
40+阅读 · 2019年9月19日
工行基于MySQL构建分布式架构的转型之路
炼数成金订阅号
15+阅读 · 2019年5月16日
基于模型的系统工程的应用及发展
科技导报
7+阅读 · 2019年5月5日
【机器人】机器人PID控制
产业智能官
10+阅读 · 2018年11月25日
【工业4.0】工业人工智能与工业4.0 制造
产业智能官
17+阅读 · 2018年11月8日
腾讯互娱刘伟 | 知识图谱在运维中的应用
开放知识图谱
20+阅读 · 2018年10月10日
腾讯互娱刘伟:知识图谱让AI更有学识
InfoQ
3+阅读 · 2018年9月28日
Arxiv
0+阅读 · 2021年2月20日
Arxiv
27+阅读 · 2020年6月19日
A Comprehensive Survey on Transfer Learning
Arxiv
117+阅读 · 2019年11月7日
VIP会员
相关VIP内容
相关资讯
前端微服务在字节跳动的落地之路
前端之巅
40+阅读 · 2019年9月19日
工行基于MySQL构建分布式架构的转型之路
炼数成金订阅号
15+阅读 · 2019年5月16日
基于模型的系统工程的应用及发展
科技导报
7+阅读 · 2019年5月5日
【机器人】机器人PID控制
产业智能官
10+阅读 · 2018年11月25日
【工业4.0】工业人工智能与工业4.0 制造
产业智能官
17+阅读 · 2018年11月8日
腾讯互娱刘伟 | 知识图谱在运维中的应用
开放知识图谱
20+阅读 · 2018年10月10日
腾讯互娱刘伟:知识图谱让AI更有学识
InfoQ
3+阅读 · 2018年9月28日
微信扫码咨询专知VIP会员