论文部分内容阅读
凭借良好的性价比,可扩展性和故障隔离性,机群在科学计算,事务处理和网络服务等不同领域都获得了广泛的应用。
分布式的体系结构和资源特征,决定了机群系统中的典型应用为分布式应用。当这种复杂的应用出现服务失效或性能问题时,如何快速的分析问题产生的原因并进行有效的问题诊断成为机群系统管理中的一个重要的研究问题。
路径分析技术是近年来针对分布式系统性能分析和故障诊断问题的一个研究热点。其核心思想是通过端到端(end-to-end)跟踪分布式系统对一个任务的处理过程,构造系统运行时控制流路径,从而对系统行为进行动态建模和可视化分析,帮助人们理解系统和有效地进行问题诊断。
然而,目前针对分布式系统的路径分析方法存在着不足之处。大部分方法依赖全局唯一的路径标志符实现路径关联机制,需要对应用的源代码、通信中间件或协议进行较大的修改,实施的复杂性和难度较高,通用性较差;另一些方法通过事件的时间关系推断应用的路径模式,实现简单,通用性强,但是准确性和抗干扰性较差,影响了在实际应用中的效果。
针对目前路径分析技术的不足,本文提出了基于happen-before因果顺序关系的路径关联模型和方法,在此基础上,针对典型的机群应用设计和实现了分布式系统问题诊断的方法和原型系统,并通过一系列实验验证了方法和模型的有效性。
具体而言,本文的主要研究成果和创新贡献包括:
1)提出了任务行为图(TAG)的因果路径分析模型,基于该模型提出了基于happen-before因果顺序关系的路径关联机制,并设计和实现了新的关联算法。与同类方法相比,本文实现的方法不需要对应用、中间件和网络协议的源代码进行任何修改,大大降低了方法的复杂性和部署成本;同时在没有显著增加算法复杂度的情况下,大大提高了关联路径的准确率和抗干扰性;
2)提出了基于因果路径延迟分析的性能问题诊断方法,通过对并发路径模型的规约,分类,聚合和profiling分析等操作,准确的发现和定位多层并发网络服务系统的性能问题;
3)提出了基于分布式系统交互特征的故障诊断机制和基于故障传播路径的失效分析方法,可以作为轻量级的分布式系统调试器帮助用户分析应用失效原因和定位故障根源;
4)在此基础上,设计和实现了面向机群系统问题诊断的原型系统PathAnalyzer,并通过一系列实验验证了方法和模型的有效性。