论文部分内容阅读
随着互联网技术的发展,海量数据访问使得传统的数据库管理系统已经无法满足业务需求,而数据库作为应用系统的核心,在企业的IT系统中的地位举足轻重,传统的使用独立服务器的风险在于一旦发生系统故障,不但严重影响企业业务的正常运行,而且会给企业造成经济损失。数据库集群是一种可以提高数据库吞吐量和减少数据库请求响应时间的有效机制,通常被用来解决网络服务中高数据访问的单点瓶颈问题。在数据库集群系统的设计中,负载均衡技术是决定集群性能和扩展性的关键因素,好的负载均衡算法可以高效地将负载分发至集群各个节点并且将集群节点故障造成的影响降至最低。集群技术在互联网中已经得到了广泛的应用,集群的体系结构也有比较成熟的设计模型,通过研究可以发现,集群模型设计的重难点就在于系统的单一对外服务镜像、负载均衡和数据一致性的保持上面,解决好这三个问题是搭建高性能、高可用和易扩展集群系统的关键。商业领域的数据库集群为此提供了一些比较成熟的解决方案,但是由于国外公司的技术封锁,购买和维护成本都比较高,MySQL数据库以及开源免费的特点受到企业的欢迎,使用MySQL搭建高可用的数据库集群系统,可以有效的控制企业IT成本。本文通过分析目前网络Web服务中常用的集群技术特点,结合商业领域中已经使用的几种商业数据库集群的系统架构设计,针对高访问量的应用特征,设计实现了一种高可用的数据库集群模型。模型使用虚拟IP对外提供单一服务镜像,采用优化的一致性哈希负载均衡算法,提供了很好的哈希性和扩展性,将集群节点故障的影响大大减小,同时为负载均衡模块实现双机热备,进一步提高系统可用性,在数据一致性上使用MySQL的Replication技术,将Master的更新同步至集群各个节点从而保证各个数据库的数据一致。系统模型已经在实验机实现,服务稳定,达到预期的效果。可以有效的进行故障切换,负载均衡和数据同步,经过进一步的优化设计可以使用在商业领域。