阿里云是核心业务板块,阿里自身运行着多地域双活架构。这道题考察你对云原生设计、容灾和跨地域数据一致性挑战的理解。
定义架构模式:双活vs主备,以及为什么关键业务优选双活。
说明流量调度:基于DNS的地理路由、GSLB全局负载均衡、基于健康检查的故障切换。
解决数据同步:单元化架构按地域分片用户数据,全局数据跨地域异步复制。
覆盖故障切换与演练:自动切换触发条件、定期容灾演练、数据一致性校验。
我会采用阿里的单元化架构模式。根据地理位置或用户ID哈希将用户分配到"单元"(归属地域),每个单元拥有独立的应用服务器、数据库和缓存,能独立处理其用户的所有请求。数据同步方面,用户数据留在归属单元,异步复制到备份单元做容灾;商品目录等全局数据采用主地域写入模型,通过DTS(数据传输服务)亚秒级复制到所有地域。流量调度用阿里云GSLB每5秒做健康检查——某地域健康分低于阈值时自动将流量切到备份单元。切换流程是:检测故障(健康检查)→排空连接(30秒优雅关闭)→切换DNS→预热目标地域缓存。每季度做一次容灾演练,主动关闭一个地域验证端到端切换流程。
单元化架构是阿里的标志性方案——提到它说明你对阿里有深入了解。
了解双活和主备的区别,以及各自在CAP定理下的取舍。
提到DTS(数据传输服务)——这是阿里云核心的数据同步产品。
这是阿里的跨地域水平扩展方案。每个"单元"是自包含的部署,处理一部分用户。它实现了独立扩缩容、故障隔离和简化的容灾,因为每个单元能自主运行。
商品信息等共享数据指定主地域写入,异步复制到其他地域。用户数据路由到用户归属单元写入。关键字段用向量时钟做冲突解决,非关键字段用最后写入胜出策略。