引用本文:于庆洋,白晓颖,李明杰,李奇原,刘涛,刘泽胤,裴丹.基于调用链控制流分析的大型微服务系统性能建模与异常定位.软件学报,2022,33(5):1849-1864
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 2418次   下载 4610 本文二维码信息
码上扫一扫!
分享到: 微信 更多
基于调用链控制流分析的大型微服务系统性能建模与异常定位
于庆洋1,2, 白晓颖3, 李明杰1,2, 李奇原4, 刘涛4, 刘泽胤4, 裴丹1,2
1.清华大学 计算机科学与技术系, 北京 100084;2.北京信息科学与技术国家研究中心, 北京 100084;3.北京大数据先进技术研究院, 北京 100083;4.百度 商业平台研发部, 北京 100193
摘要:
大型微服务系统中组件众多、依赖关系复杂, 由于故障传播的涟漪效应, 一个故障可能引起大规模服务异常, 快速识别异常并定位根因是服务质量保证的关键. 目前主要采用的调用链分析方法, 常常面临调用链结构复杂、实例数量庞大、存在大量小样本等问题, 因此提出基于调用链控制流分析, 将大量调用链结构聚合为少量方法调用模型; 并提出基于方法调用模型的执行时间分解模型及预测方法, 将实际值与预测值的相对误差超过设定阈值的待检测数据判定为异常. 采用百度凤巢广告业务系统某天超过17亿条调用链日志记录开展实验分析, 结果表明: 与数据驱动的调用序列分析方法相比, 提出的基于模型的方法可以大幅缩减调用链结构数量, 并有效分析和检测微服务性能异常及其根因.
关键词:  微服务系统  性能异常检测  根因分析  调用链  控制流分析
DOI:10.13328/j.cnki.jos.006209
分类号:TP311
基金项目:国家重点研发计划(2019YFB1802504, 2019YFE0105500); 国家自然科学基金(62072264)
Performance Modeling and Anomaly Location of Large Microservice Systems Based on Trace Control Flow Analysis
YU Qing-Yang1,2, BAI Xiao-Ying3, LI Ming-Jie1,2, LI Qi-Yuan4, LIU Tao4, LIU Ze-Yin4, PEI Dan1,2
1.Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China;2.Beijing National Research Center for Information Science and Technology, Beijing 100084, China;3.Advanced Institute of Big Data, Beijing 100083, China;4.Department of Commercial Platform, Baidu Inc., Beijing 100193, China
Abstract:
In a large microservice system, there usually exist many services with complex dependencies among them. A failure in one component may propagate widely and cause large-scale service anomalies. To ensure system quality, it is critical to effectively identify abnormalities and locate root causes. Invocation-chain analysis is a commonly used method for service performance modeling and anomaly detection. Existing techniques are mostly data-driven, facing many challenges of big data analysis such as diversified chain structures, a vast number of instances, and imbalanced datasets that many structures have only a small number of samples. In counter to the problems, the study proposes a model-based approach which builds high-level abstractions of method invocation models based on control-flow analysis. The instances of various invocation-chain structures are clustered into various method invocation models, which can greatly reduce the size of chain structures. Performance models are built for the method invocation models, and thresholds are defined based on the predicted execution time derived from the performance model. Outliers in the trace logs are thus identified as candidates of anomalies. Experiments were exercised on real industry logs from Baidu PhoenixNest Ads system. A one-day log with over 1.7 billion records was selected. The experiment results show that, compared with pure data-driven sequence analysis methods, the proposed model-based approach can greatly reduce the size of invocation-chain structures while effectively analyzing and detecting microservice performance anomalies and root causes.
Key words:  microservice system  performance anomaly detection  root cause analysis  invocation chain  control flow analysis

引用本文:
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览次   下载  
分享到: 微信 更多
摘要:
关键词:  
DOI:
分类号:
基金项目:
Abstract:
Key words: