异地多活架构

422 阅读1分钟

背景

  • 高可用计算架构、高可用存储架构。
  • 本质都是为了解决部分服务器故障的场景下,如何保证系统能够继续提供服务。

极端场景

  • 断电、火灾、地震、水灾等。
  • 会导致某个系统的所有服务器都故障。
  • 解决方案:使用备份数据,但恢复较慢,且数据未经验证,存在隐患。
  • 最终方案:设计异地多活架构。

应用场景

判断一个系统是否符合异地多活,需要满足两个标准:
  • 正常情况下,用户无论访问哪一个地点的业务系统,都能够得到正确的业务服务。
  • 某个地方业务异常的时候,用户访问其他地方正常的业务系统,能够得到正确的业务服务。

异地多活的代价

  • 系统复杂度会发生质的变化,需要设计复杂的异地多活架构。
  • 成本上升,毕竟要多在一个或者多个机房搭建独立的一套业务系统。
  • 若无法承受异地多活带来的复杂度和成本,可以选择异地备份即可。
  • 常见场景:支付,滴滴打车,微信等。

异地多活的好处

  • 提供更好的用户体验
  • 减少异常场景带来的损失
  • 防止口碑下滑

架构模式

注:有兴趣了解极客时间专栏的同学,可以查看极客时间专栏—可提供返现服务