分布式一致性Paxos算法

关于这个算法,写一下简单的总结,后面等demo做到这里时,再做详细介绍

首先这个一致性算法最核心的就是俩字:多数

分为两个阶段,实际上这些阶段并非需要同步,对于不同的proposer来说,只要达到两个阶段的多数,该提议肯定会被接受,其他的提议肯定被搁置

Prepare阶段

即对每个proposer来说,必须有多数个accepter接受其请求才算结束(这里面的多数个可由配置决定,例如三个中的两个)

每个proposer发送给accepter的消息都会存在一个编号,这个编号就像是优先级

如果消息中的优先级小于accepter的优先级,则拒绝该消息

如果消息中的优先级大于accepter的优先级,则接受该消息,并且更改accepter的优先级为当前消息的优先级

accept阶段

每个proposer发送消息及提议给accepter

根据最多个accepter接受的proposer来决定选择哪个proposer的提议作为当前提议。

猜你喜欢

转载自www.cnblogs.com/gambler/p/9146648.html