Chinaunix首页 | 论坛 | 博客
  • 博客访问: 44633859
  • 博文数量: 384
  • 博客积分: 9990
  • 博客等级: 中将
  • 技术积分: 5644
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-05 17:44
文章分类

全部博文(384)

文章存档

2011年(1)

2008年(383)

分类: 服务器与存储

2008-06-07 18:30:55

对于企业重要的应用系统而言,保证系统持续、可靠地提供服务是非常重要的,因此就出现了对高可用性的需求和高可用性的解决方案。从广义讲,高可用性包括一切避免系统服务中断的技术。而一般所说的系统高可用性,往往特指服务器的双机或多机热备/容错。决定是否使用双机热备,正确的方法是要分析一下系统的重要性以及对服务中断的容忍程度,以此决定是否使用双机热备。即,你的用户能容忍多长时间恢复服务,如果服务不能恢复会造成多大的影响。

  从概念上,双机热备是集群(Cluster)的一种。集群一般包括两类,一类是纯粹应用服务器的集群,各个应用服务器都访问统一的数据库服务器,但彼此并不需要共享存储,这种集群是比较简单的,往往采取各个服务器同时提供服务的方式,并且往往同时采用负载均衡技术。有另一类是数据库服务器(或其他需要访问存储数据的系统如Exchange、Notes)的集群。集群可能包括多台服务器。集群软件除了支持双机工作外,还可以支持多台服务器(Multi Node)工作,同时部署多个应用,并在多个服务器间灵活地设置接管策略。

  数据库双机热备方案中最简单的是采用备机的方式。这其实不属于高可用性的范围,但可以将出现故障后恢复服务的时间控制在几十分钟的量级,而且备机平时还可用作其他用途。这种方式是一种低成本的简单方案,对于不是非常重要的应用比较适合。它不适用于重要应用,但是除非你的应用停上几天都无所谓,否则至少要有这一级别的保护措施。第二种是通过软件方式实现双机热备。即不采用共享的存储设备,而是数据不再单点存储,本机数据可以向多台主机做实时的数据复制。这种方式的优点是节省了昂贵的存储设备投资。缺点是或者会产生数据的差异,或者会影响数据库的速度。比如,如果在服务中断时切换到备机,则可能有少量已经在主机完成的事务在备机上尚未实现。而与备份数据的恢复不同,备机启动后,后续的操作已经进行,因此丢失的事务就很难补上。因此,这种方式适用于对于丢失少量数据不是非常敏感的系统。第三种是基于共享存储设备和双机软件实现双机热备。这是标准的方法,能够在无人值守的情况下提供秒级的切换,并且不会丢失数据。当然,投资会比较高。

  在一般的中小规模应用中,数据库的双机热备都是主/备方式,主服务器工作时另一台等待,在主服务器出现故障时借助双机热备软件自动切换至另一台服务器。而有些大规模应用为充分利用设备,可以采用并行服务的方式,两台服务器同时提供服务,如Oracle的RAC(Oracle Real Application Cluster),以及支持SQL Server并行服务的数据库路由器软件ICX。


阅读(785) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~