大数据网站降低单点故障损失的方法0+

4,591 views / 2009.09.03 / 12:12 上午

大数据网站的数据具有访问频率高,更新速度快,更新量大,不便于备份等特点,如果我们依然用传统的单服务器单数据库去构架,首先不能保证大流量访问,其次数据备份困难,再次数据出现故障不能及时修复,所以,我们从两个方面着手,本着低成本的原则,提出解决方案。

一 采用双网卡,内网外网分离,维护时内网操作,外网负载均衡后提供服务。采用主从数据库的方式。

目的:提高系统稳健性,降低单点故障给系统构成的影响。

前提:1. BIGIP自动识别异常服务器功能正常工作;2. 系统挂载的存储及数据库正常工作

方式

1. web端的冗余

a) 唯一性数据存放在存储服务器上(模板、静态化文件、碎片等)

b)程序等多份数据(选择一台机器做为主机器,用rysnc进行程序更新以及分发),程序定期更新至svn。

 2 . 数据库冗余

采用M-S模式,进行读写分离。在程序上进行控制,要是有一个出问题直接切回单机模式,来防止数据库机器损害带来的长时间停机。(应用程序修改大,需要较长时间,可以考虑进一步优化)

如图:

1

二 挂载双存储,每个存储分多个挂载点挂载到前端服务器。

如果系统存储只有一台服务器,如果出问题,会造成长时间服务中断,我们讨论出一套方案,可以使损失降到尽量小。

设存储一为s1,存储二为s2, 这两台都有三个挂载点,记为data1,data2,data3,我们把s1的data1,data2挂载在前端机器上,把s2的data3也挂载在前端机器上,同时每天把s1的data1,data2同步到s2, 把s2的data3同步到s1,保证两个存储数据尽量同步。

如图:

2

当故障发生时,比如s2宕掉,可以快速的把前端服务器的data3挂载改为s1的data3,这样只有最多一天的单个目录数据丢失,我们可以再对其进行简单的恢复操作。?

优点:1. 单存储负载被分担 2.线上已有产品程序不用调整 3.故障时处理迅速

缺点:故障恢复时,当天的部分数据可能会丢失。