前言
分布式算法的目标:
-
选主(Leader Election): 在一堆平等的服务器节点中,选出一个“老大”(Leader)。所有的写操作(比如发布一条消息)都必须先交给老大处理,以此来保证指挥统一。
-
数据一致性(Consistency): 确保所有节点上的数据副本是一模一样的。老大收到数据后,会负责把数据复制给小弟们(Followers)。只有当大多数节点都收到了数据,这条数据才算“写成功”。
-
高可用(High Availability): 如果老大突然挂了,剩下的小弟们能立刻通过 Raft 算法自动投票选出新的老大,继续对外提供服务,而不会导致系统瘫痪或数据丢失。
// TODO: 常见分布式算法