容灾技术是保证计算机系统高可用性的重要技术之一。从范畴上讲,容灾技术包括心跳检测技术在内的许多技术手段,如双机热备份,计算机集群,存储区域网络等。在计算机系统发生人为失误,系统错误,甚至受到外来打击或者遭到停电,洪水等灾难性的破坏时,容灾技术仍能使系统在少损失数据甚至不损失数据的情况下对外提供高可用不间断或间断时间很短的服务。心跳技术作为一种容灾技术其主要功能是检测系统错误并做出适当的反应,心跳检测的性能和准确率对容灾系统提供的服务有很大影响,已经成为容灾技术不可缺少的一方面。
本文从容灾技术的基础入手,讲述了容灾技术的概念,分类,级别,性能指标,并给出了容灾技术的重要性以及其在国内外的发展现状。接着针对某实际工程项目的生产系统对系统提供高可用性服务的需求,给出了一个在本地使用计算机高可用集群,双机容错技术,在异地使用远程容灾中心进行容灾的容灾系统的设计,讨论了该容灾系统的软硬件体系结构,子系统的划分,各个子系统的功能及它们之间的关系,并对其中的容灾系统控制平台和状态检测子系统进行了详细的设计与分析。之后将重点转到状态检测子系统所使用的心跳检测技术上来,详细介绍心跳检测技术的原理,性能指标,心跳协议的选择,各种心跳协议的优缺点及适合使用的环境;对项目中所选用的加速心跳协议模型进行剖析,并用双机技术和选举算法对其进行适当的改进以弥补其缺点。最后对状态检测子系统中本地容灾系统和远程容灾系统的心跳检测部分进行详细设计,分析与实现,并根据实验仿真的结果给出所设计的心跳检测模块的参数与性能评价。