Page 162 - 《软件学报》2026年第2期
P. 162

软件学报 ISSN 1000-9825, CODEN RUXUEW                                        E-mail: jos@iscas.ac.cn
                 2026,37(2):641−661 [doi: 10.13328/j.cnki.jos.007482] [CSTR: 32375.14.jos.007482]  http://www.jos.org.cn
                 ©中国科学院软件研究所版权所有.                                                          Tel: +86-10-62562563



                                                                   *
                 面向大规模在线系统的故障根因变更识别

                 余广坝  1 ,    陈鹏飞  1 ,    唐锡涛  1 ,    郑子彬  2


                 1
                  (中山大学 计算机学院, 广东 广州 510006)
                 2
                  (中山大学 软件工程学院, 广东 珠海 519082)
                 通信作者: 陈鹏飞, E-mail: chenpf7@mail.sysu.edu.cn

                 摘 要: 在大规模在线服务系统中, 为了适应快速变化的用户需求和信息技术如连续集成/交付等, 软件变更频繁发
                 生且呈现上升趋势. 尽管工程师会在软件变更上线之前对新版本进行严格的测试, 但由于测试环境与生产环境之
                 间在负载、规模、用户等方面存在诸多差异, 导致部分隐蔽缺陷未能被及时发现, 随新版本发布带入生产环境, 对
                 系统的可用性和稳定性造成影响. 为了更深入地了解缺陷变更在部署到生产环境后的影响和行为, 基于来自全球
                 大规模即时通信系统微信的真实变更故障数据进行了实证分析, 并得出                        5  个关于缺陷变更的关键发现. 基于实证
                 研究的发现和结论, 提出一种轻量级故障根因变更识别方法. 该方法旨在自动化地识别导致变更故障的根因变更,
                 从而帮助运维工程师完成根因定位和故障修复工作. 为了验证提出的故障根因变更识别方法的有效性, 在微信的
                 生产环境中采集了包含多种类型缺陷变更的真实数据集, 同时还构建一个微服务基准测试系统的模拟变更数据集,
                 然后对提出的方法进行系统性评估. 实验结果表明, 所提方法在微信生产环境数据集和模拟变更数据上的故障根
                 因变更   Top-3  命中率分别达到    80%  和  84%, 并且故障根因变更识别效果显著优于当前最先进的缺陷变更检测方
                 法. 此外, 从工程实践角度, 系统在处理典型规模故障时内存占用仅为                    2.3 GB, 平均分析时延   28.6 s, 满足实际生产
                 环境需求.
                 关键词: 软件变更; 根因定位; 故障; 在线系统
                 中图法分类号: TP311

                 中文引用格式: 余广坝, 陈鹏飞, 唐锡涛, 郑子彬. 面向大规模在线系统的故障根因变更识别. 软件学报, 2026, 37(2): 641–661. http://
                 www.jos.org.cn/1000-9825/7482.htm
                 英文引用格式: Yu GB, Chen PF, Tang XT, Zheng ZB. Root Cause Change Identification for Failures in Large-scale Online System.
                 Ruan Jian Xue Bao/Journal of Software, 2026, 37(2): 641–661 (in Chinese). http://www.jos.org.cn/1000-9825/7482.htm

                 Root Cause Change Identification for Failures in Large-scale Online System
                                        1
                                                     1
                           1
                 YU Guang-Ba , CHEN Peng-Fei , TANG Xi-Tao , ZHENG Zi-Bin 2
                 1
                 (School of Computer Science and Engineering, Sun Yat-sen University, Guangzhou 510006, China)
                 2
                 (School of Software Engineering, Sun Yat-sen University, Zhuhai 519082, China)
                 Abstract:  In  large-scale  online  service  systems,  software  changes  occur  frequently  and  are  on  the  rise  due  to  the  need  to  adapt  to  rapidly
                 changing  user  demands  and  information  technologies,  such  as  continuous  integration  and  delivery.  Although  engineers  rigorously  test  new
                 software  versions  before  deployment,  some  defects  may  go  unnoticed  during  testing  and  end  up  being  deployed  to  the  production
                 environment.  This  primarily  occurs  because  significant  differences  exist  between  the  testing  and  production  environments  in  terms  of  load,
                 scale,  and  user  characteristics.  As  a  result,  these  defects  can  impact  the  system’s  availability  and  stability.  To  better  understand  the  impact
                 and  behavior  of  defective  changes  after  deployment  to  the  production  environment,  this  study  conducts  an  empirical  analysis  using  real
                 change failure data from WeChat, a large-scale global instant messaging system. Five key findings related to defective changes are derived


                 *    基金项目: 国家重点研发计划  (2024YFB4505904); 国家自然科学基金  (62272495); 广东省基础与应用基础研究基金  (2023B1515020054)
                  收稿时间: 2024-06-07; 修改时间: 2025-03-25, 2025-05-21; 采用时间: 2025-06-06; jos 在线出版时间: 2025-12-03
                  CNKI 网络首发时间: 2025-12-04
   157   158   159   160   161   162   163   164   165   166   167