论文部分内容阅读
随着计算机技术的发展以及互联网的普及,信息存储的要求也变得越来越高。数据已成为互联网公司的命脉,单机存储早已不能满足存储需求,出现了分布式存储。为了提高分布式系统的可靠性和性能,提出了副本技术。当一个副本节点出现故障时,可通过启用其它副本节点确保系统的可靠运行;同时,在系统负载比较大的情况下,可通过读取同一数据的不同副本,缓解系统压力,从而提高系统性能。副本的引入,也带来了副本管理和一致性控制等难题。目前大部分实现强一致性的副本存储系统,均不能有效地容忍节点宕机。 课题研究如何通过Paxos协议实现存储系统多副本的强一致性,并且保证在一半以内副本节点失效情况下系统仍能正常提供服务,宕机后的节点通过磁盘日志恢复后可以再次加入系统,各副本间的数据内容以及顺序均保持完全一致;解决了Paxos协议理论上忽略的细节,包括如何检测失效、如何选主、宕机如何恢复、消息流量控制和不一致节点间如何数据同步等;同时研究工程实现上的优化措施,包括并行发送实例、减少消息流量和打包机制等,在满足一致性和分区容错性的前提下,尽量提高系统性能。 实验测试表明,Paxos协议是分布式环境中提供高可靠服务的可行性较强的副本协议方案,能够提供很好的一致性和分区容错性,并且在适当的优化措施下能达到较高的性能。