知识卡片

中介式切换把复杂度转移成了中介自身的高可用问题

普通读书笔记卡 · 1675.b

内容

双机切换中,主备直连传递状态(互连式)简单,但通道故障会误判成双主机;引入第三方中介统一管理(中介式)更简单,但中介自己必须高可用,否则中介宕机系统整体不可用——形成”为让A高可用引入中介B,B又需要高可用”的递归陷阱。发散:打破递归不是自造中介,而是复用已解决高可用问题的成熟组件(如ZooKeeper),把”造轮子”停在能承受的层级。

参考来源

- 位置:《从0开始学架构》第29章《25|高可用存储架构:双机架构》"中介式"一节(源文件:_epub-src/OEBPS/Text/part0028_split_004.html) - 结论依据:原文明确"中介式架构在状态传递和状态决策上更加简单,但并不意味着这种优点是没有代价的,其关键代价就在于如何实现中介本身的高可用……这就陷入了一个递归的陷阱:为了实现高可用,我们引入中介,但中介本身又要求高可用……如此递归下去就无穷无尽了",并说明"开源方案已经有比较成熟的中介式解决方案,例如ZooKeeper和Keepalived……推荐基于ZooKeeper搭建中介式切换架构"。 - 原始内容:中介式架构在状态传递和状态决策上更加简单,但并不意味着这种优点是没有代价的,其关键代价就在于如何实现中介本身的高可用……这就陷入了一个递归的陷阱……开源方案已经有比较成熟的中介式解决方案,例如ZooKeeper和Keepalived。