高可用是大型架构核心,下面我详解两地三中心@mikechen
两地三中心
在BAT架构中,“两地三中心”是金融级容灾的标配。
简单来说,这是一种横跨两个城市、部署三个数据中心的容灾方案。
它的目标是应对从“服务器宕机”到“整个城市地震/断电”等不同量级的灾难。

两地:指 同城(Local City)和 异地(Remote City)。
三中心:
生产中心 (DC1):日常处理业务的机房。
同城灾备中心 (DC2):距离生产中心较近(通常几十公里内),通过高速光纤直连。主要应对单机房故障。
异地灾备中心 (DC3):距离生产中心较远(通常 1000 公里以上,如北京到上海)。
主要应对区域性自然灾害(地震、水灾等)
两地三中心落地
首先,拓扑设计与站点选址
选择两地(A/B)异地部署,三中心可为:A站主中心、B站主/次中心。
以及第三中心(可位于A或B的独立机房或第三方数据中心)作为长期备份或冷备。

站点应考虑电力、网络、地质灾害等风险分布,确保物理隔离与低相关风险。
其次,数据同步与一致性策略
根据RPO选择同步复制(同步/半同步)或异步复制。
对强一致性业务采用同步/双活架构,对可容忍短时数据丢失的业务采用异步复制以降低延迟与带宽成本。
建立跨站点的数据库复制、文件/对象存储复制及消息队列镜像等机制,并做好冲突检测与回滚策略。

以及,流量调度与负载切换策略
设计合理的流量调度(DNS、全局负载均衡、BGP、GSLB等)与灰度切换策略。
主备切换需考虑会话保持、事务完整性与客户端感知,确保用户体验平滑。
然后,监控、演练与运维保障
建立覆盖基础设施、应用、数据一致性与业务指标的监控体系,并制定详尽的故障处理与应急预案。
定期开展容灾演练(包括主站故障演练、数据恢复演练、全站切换演练),验证RTO/RPO达成能力并持续改进。
最后,安全与合规性考虑
在两地三中心部署中保证数据传输加密、访问控制、多层防护与日志审计,满足合规性要求(如数据主权、备份周期等)。