论文部分内容阅读
计算技术的迅猛发展,使得集群得到了广泛应用,构建在集群上的应用系统,其可用性一直是备受关注的问题。高可用集群的出现就是为了使集群能够提供高度可靠的整体服务,以应对计算硬件和软件的易错性。作为一种低成本的容错策略,回卷恢复技术已成为大众化应用系统首选的容错解决方案。然而,将回卷恢复技术应用到高可用集群中产生了许多新的问题需要进一步研究,比如:实时任务检查点设置,快速故障转移,以及可靠集群通信协议等。本文以解决集群系统中回卷恢复技术所面临的关键问题为目标,对以下内容进行了创新性研究:系统地介绍了回卷恢复技术的基本原理、模型、主要协议算法,以及近年来的研究成果,分析了各种回卷恢复协议的特点和应用范围。研究了优化检查点设置间隔问题,对检查点设置策略中系统故障时间分布进行了细致地分析,并针对集群系统中存在的大量实时任务,提出了一种基于非精确计算的检查点设置算法,该算法可以为多任务实时系统提供容错和确定性的实时保证。实验结果表明该算法提高了系统的容错能力,使得实时任务能够在按时完成的前提下容忍更多的故障。故障转移是回卷恢复的关键技术点,它能在系统资源部分损失的情况下,对剩余可用资源重新配置并恢复需要继续执行的计算任务。针对目前大多数的故障转移策略不能保证服务可用性或仅适用于确定性系统的问题,本文提出了一种面向服务的快速透明故障转移模型(SOFailover,Service-oriented Fast Transparent Failover)及其算法,并从理论上分析了算法的一致性约束。实验结果表明,SOFailover具有较短的故障转移延时和较低的系统开销,能够在保证服务可用性前提下高效透明地对非确定系统进行故障转移。研究了集群系统中数据传输协议。回卷恢复技术提高了集群系统对通信的要求,而目前主流数据传输协议无法满足这些需求。本文提出了一种基于UDP的高效可靠数据传输协议(REUDP,Reliable and Efficient User DatagramProtocol)及其性能分析模型,在保证可靠性的前提下,使系统通信能力得到极大的提高。实验结果表明,REUDP可以在高性能集群系统网络中非常有效地运行,分析模型能够结合网络实际情况对其性能做出较为准确的预测。随着集群系统规模的不断扩大,系统平均故障时间也在逐步缩短,容错和可靠性成为计算任务稳定运行的基本保障。传统的容错策略具有很多局限性,无法适应大规模异构集群系统容错的需求,本文提出一种面向大规模集群系统的回卷恢复容错策略,该策略不需要任何保存检查点和日志的可靠存储设备,在恢复期间也不依赖额外备用的计算节点去接替失效节点,计算任务会继续运行在剩余的计算节点上。而且,该策略能够在故障后自动进行负载均衡,有效地降低了计算节点损失对系统的影响。软件复用技术已从通用类库进化到了面向领域的应用框架和设计模式,针对高可用系统软件的特点和复用技术在软件设计中的影响,本文基于模式语言设计实现了一种可复用的回卷恢复应用框架(RRAF,Rollback Recovery Application Framework),该框架能够涵盖以上提出的算法及策略。本文具体阐述了RRAF的体系结构,实现机制,模式语言的建立及相互间的协作关系。最后给出RRAF在流媒体服务器软件设计中的具体应用,对模式语言在领域应用和实现功能软件复用等方面作了有益的探索。