截至到SQL Server 2008 R2 版本,微软还是没有推出官方的负载均衡组件,只能通过SQL Server的其他技术特性或者利用第三方组件来DIY。
在前面的博客中,总结了一些常见的“sqlserver集群”“sqlserver数据同步”“sqlserver故障转移”...等相关的实现技巧。今天就不仔细讲解了。
今天想推荐大家尝试使用第三方的组件和工具,典型的就是一款ICX数据库路由。当然,我和这些工具的厂商也不熟,所以本文显然不是广告。呵呵。
长期以来,SQL SERVER数据库服务器都只有“热备”的解决方案,而没有“负载均衡”和“集群”的解决方案。这种解决方案固然
提升了系统的可靠性,但也存在一些问题:
* 面对大数据量和大量的数据库查询请求,只能采取纵向提升服务器档次的方法,而纵向提升的成本远远高于横向扩展。
* 在热备时,数据库服务器只有一台在工作,另一台处于闲置备份的状态,造成了投资的浪费。
* 非实时切换。
而数据库路由器软件ICX 的出现,为基于MS SQL Server的数据库系统提供了一种更优秀的集群解决方案。它可以真正的实现SQL Server数
据库服务器的动态负载均衡,提高性能和速度;它可以真正的保证SQL Server数据库服务器不间断的提供服务,在服务器发生故障的时候实
时切换到其他服务器上继续提供服务,切换时间为“零”。
数据库路由器是实时并发数据库事务处理同步复制器和负载平衡器。
数据库路由器--ICX(意思是:I SEE X DATABASE SERVERS),也就是说,在ICX后面可以同时连接N个数据库,结构如下图所示:
1.所有的数据库客户都通过ICX访问数据库。当访问、查询SQL Server数据库的时候ICX可以根据实际情况分配服务器来提供服务,大大提
高服务速度和优化性能,完成负载均衡。
2.ICX可以同时连接多台数据库(2-16台,具体连多少台,看客户的具体需求而定),这若干台数据库的内容在任何时刻由ICX保证是完
全一致 的。也就是说,ICX采用了全新的并发事务处理的方式,向连接的N台数据库同步复制事务处理,使得系统在任何时刻具有多个一致的
最新逻辑数据库数据集。当 其中一台数据库服务器发生故障的时候,ICX可以实时的、第一时间切换到其他服务器上来继续提供服务。真正
的实现零时间的服务器切换,大大提高安全性,真 正意义的实现服务器不间断服务。