《软件学报杂志》发表论文赏析
作者:于庆洋,白晓颖,李明杰,李奇原,刘涛,刘泽胤,裴丹
单位:于庆洋,清华大学 计算机科学与技术系, 北京 100084;北京信息科学与技术国家研究中心, 北京 10008411,白晓颖,北京大数据先进技术研究院, 北京 10008302,李明杰,清华大学 计算机科学与技术系, 北京 100084;北京信息科学与技术国家研究中心, 北京 10008403,李奇原,百度 商业平台研发部, 北京 10019304,刘涛,百度 商业平台研发部, 北京 10019305,刘泽胤,百度 商业平台研发部, 北京 10019306,裴丹,清华大学 计算机科学与技术系, 北京 100084;北京信息科学与技术国家研究中心, 北京 10008407
摘要:大型微服务系统中组件众多、依赖关系复杂, 由于故障传播的涟漪效应, 一个故障可能引起大规模服务异常, 快速识别异常并定位根因是服务质量保证的关键. 目前主要采用的调用链分析方法, 常常面临调用链结构复杂、实例数量庞大、存在大量小样本等问题, 因此提出基于调用链控制流分析, 将大量调用链结构聚合为少量方法调用模型; 并提出基于方法调用模型的执行时间分解模型及预测方法, 将实际值与预测值的相对误差超过设定阈值的待检测数据判定为异常. 采用百度凤巢广告业务系统某天超过17亿条调用链日志记录开展实验分析, 结果表明: 与数据驱动的调用序列分析方法相比, 提出的基于模型的方法可以大幅缩减调用链结构数量, 并有效分析和检测微服务性能异常及其根因.
关键词:微服务系统;性能异常检测;根因分析;调用链;控制流分析
基金资助:国家重点研发计划(2019YFB1802504, 2019YFE0105500); 国家自然科学基金(62072264)