单主复制

所有写入经主节点,副本异步或同步复制;实现简单、冲突少,是多数关系型数据库的默认形态,限制是写扩展能力与主节点故障切换风险。

复制模式

复制模式确认时机风险
同步复制等待副本确认后返回延迟高,副本故障影响写入
异步复制主库提交即返回故障切换可能丢失最近写入
半同步至少一个副本确认折中:兼顾延迟与丢数据窗口
异步复制下的故障切换要明确可接受的数据丢失窗口,并与业务确认。

易错点

  • 异步复制下自动切换,最近已确认的写入丢失
  • 从库延迟未监控,报表与实时查询读到的数据口径不一致

数据来源与参考

  • 《数据密集型应用系统设计》(Kleppmann)第 5 章
  • MySQL 8.0 Reference Manual:Replication
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌