架构第10章 业务高可用的保障:异地多活架构

异地多活架构
本文来自于《极客时间》- 从0开始学架构

无论是高可用计算架构,还是高可用存储架构,其本质的设计目的都是为了解决部分服务器故障的场景下,如何保证系统能够继续提供服务。
但在一些极端场景下,有可能所有服务 器都出现故障。例如,典型的有机房断电、机房火灾、地震、水灾......这些极端情况会导致某个系统所有服务器都故障,或者业务整体瘫痪,而且即使有其他地区的备份,把备份业 务系统全部恢复到能够正常提供业务,花费的时间也比较长,可能是半小时,也可能是12小时。
因为备份系统平时不对外提供服务,可能会存在很多隐藏的问题没有发现。
如果业务 期望达到即使在此类灾难性故障的情况下,业务也不受影响,或者在几分钟内就能够很快恢复,那么就需要设计异地多活架构。

应用场景

异地多活架构的关键点就是异地、多活.
异地就是指地理位置上不同的地方,类似于“不要把鸡蛋都放在同一篮子里”;
多活就是指不同地理位置上的系统都能够提供 业务服务,这里的“活”是活动、活跃的意思。
判断一个系统是否符合异地多活,需要满足两个标准:
1)正常情况下,用户无论访问哪一个地点的业务系统,都能够得到正确的业务服务。
2)某个地方业务异常的时候,用户访问其他地方正常的业务系统,能够得到正确的业务服务。

与“活”对应的是字是“备”,备是备份,正常情况下对外是不提供服务的,如果需要提供服务,则需要大量的人工干预和操作,花费大量的时间才能让“备”变成“活”。
从异地多活的描述来看,异地多活很强大,能够保证在灾难的情况下业务都不受影响。
实现异地多活架构复杂性具体表现为:
1)系统复杂度会发生质的变化,需要设计复杂的异地多活架构。
2)成本会上升,毕竟要多在一个或者多个机房搭建独立的一套业务系统。

你可能感兴趣的:(架构第10章 业务高可用的保障:异地多活架构)