论文部分内容阅读
人类从农耕时代到十九世纪末的工业时代,再到当今二十一世纪的信息时代,技术不断的推动着生产力快速发展,带给人类一个崭新的世界。互联网已经在全球掀起了一场改变人类方方面面的变革。目前,中国已有8亿网民在互联网上获取各种各样的信息和服务,同时越来越多的线下服务正在逐步迁移至线上,如何保证产品或服务的高可用性和高可靠性,确保业务不间断提供服务,成为所有互联网企业不可避免的思考。另一方面,多数互联网公司都开始采用面向服务架构(SOA)技术,应用服务之间结构越来越复杂、变化越来越迅速。当服务出现故障时,往往伴随着上下游服务节点大量的告警信息,同时告警信息之间有着千丝万缕的关系,如果简单依靠运维人员通过命令去诊断和解决故障,效率低下,可能导致应用停止服务的时间过长,产品的用户体验良好度下降等诸多问题。因此,本文提出基于分布式跟踪技术,采集服务链路调用数据,再通过告警诊断子系统对告警信息进行去冗余、推理等操作,诊断出重要告警信息,帮助运维人员快速解决故障。本文首先分析了当前业界关于故障诊断的相关现状和技术,结合它们的优缺点,提出基于分布式跟踪技术,诊断告警数据。然后采用松耦合架构理念,设计了整体系统架构图,其中告警数据接收子系统设计成集群方式启动,保证数据接收模块稳定性。告警诊断子系统采用分层结构设计,将诊断过程共分成6大模块,以提高告警数据诊断的准确性和去冗余性。最后通过实验验证了基于分布式跟踪告警诊断系统的有效性。