《后端高可用架构中的故障转移与容灾设计》

54 阅读1分钟

任何系统都可能出错。高可用架构的目标是让故障不影响服务连续性。故障转移与容灾设计是核心环节。

1. 高可用的定义

系统在指定时间内保持可用的能力。常用指标:

  • 可用性(Availability) = 正常运行时间 / 总时间。
  • 例如:99.9%(年宕机 < 9 小时),99.99%(年宕机 < 1 小时)。

2. 故障转移(Failover)机制

  • 主动式:系统检测到异常后自动切换备份节点。
  • 被动式:人工触发或依赖外部监控工具。

常见模式:

  1. 主备模式(Active-Standby) :主节点工作,备节点实时同步状态。
  2. 主主模式(Active-Active) :多节点共同处理流量,互为备份。
  3. DNS 级切换:通过域名解析实现跨地域流量转移。

3. 容灾层次

  1. 同机房容灾:多实例部署 + 负载均衡。
  2. 同城双活:两个机房实时同步数据,双向处理流量。
  3. 异地多活:跨城市部署,防止区域性灾难。

4. 数据层容灾

  • 主从复制:异步或半同步复制,保障数据安全。
  • 多活复制:两地可写,但需解决冲突。
  • 备份策略:定期冷备 + 异地存储。

5. 实践要点

  • 故障检测周期要短。
  • 切换过程必须幂等。
  • 监控与演练是关键,定期做故障注入测试(Chaos Engineering)。

结论:容灾不是为了应对灾难,而是保证“灾难一定会发生时,系统依然可用”。