毫无疑问许多电子商务网站都经历过假期的高访问量例如Flowerscom公司(Flowerscom网站)就在情人节母亲节圣诞节复活节感恩节秘书节以及团队感谢周那一天遇到了剧增的订单还有其他大多数的在线零售商也都经历过从感恩节一直持续到月日的订货高峰期
那么你从这些公司身上可以了解到他们需要保持高可用性快速运行的数据库下面我将按照以下的总体概念和清单讨论几种你可以应对高峰来临的方式
可用性方法
集群
高可用性通常包含了集群当你需要较高级别的正常运转时间的时候你需要对SQL Server进行集群由以下几部分组成有几个节点集合在一起形成的一个单个实例的集群他们在面对客户的时候表现为一个单个的节点如果集群中的一个节点掉线了(由于SQL Server错误硬件错误或者维护)其他的节点将会自动接过它的工作负载客户根本不需要重新连接到其他的节点上因为这些节点都连接到一个虚拟的服务器上它漂浮在所有活动节点之上
集权提供了对硬件和软件错误的自动错误容忍但是它通常不会提供对本地错误的容忍(例如放置集群的大厦或者房间内的电源坏了)注意力应该放在消除单个点的失败例如冗余电源供应或者备用的发电机能源
地理集群和负载均衡
其他的高可用性方法包括地理集群集群节点分布在不同的位置上;或者地理负载均衡IP地址客户可以在主要的数据中心和灾难恢复网站之间交换
EMC公司日立数据系统公司还有现在的收购了赛门铁克的Veritas软件公司都提供了硬件的数据镜像它可以提供持续的复制这样灾难恢复网站就可以保证拥有你的数据的实时拷贝硬件数据镜像工具可以用于连接地理IP解决方案为灾难恢复网站提供自动化的错误恢复
缩小规模
你还可以利用缩小规模的方法来将你的数据分散到多个工作机器上不再让个用户都连接到一个SQL Server上而是让个SQL Server上分别连接个用户你的数据访问模式必须要与此相匹配客户连接到哪个SQL Server都没关系或者你必须要激活粘性会话通过这种方式每个客户在其会话长度内都连接到一个单个的SQL Server上
例如如果你的联盟中有个SQL Server提供分类信息并且在这个SQL Server之间的数据也是相同的那么客户连接到哪个SQL Server上然后又重新连接到哪个SQL Server上这都没有关系SQL Server 中的点对点应用程序就被恰好是为这种类型的缩小规模设计的
[] [] [] []