首页 > 编程语言 > 详细

Paxos算法介绍

时间:2015-02-28 01:35:15      阅读:236      评论:0      收藏:0      [点我收藏+]

Paxos算法是为了实现分布式环境中为保证数据的一致性而设计的,在一个分布式系统中,通过投票的方式来确定一个值(决议)。只不过这个步骤分为两步:

准备阶段(prepare)和批准阶段(accept)。

同时又分为若干角色,以下都可以兼任。

proposer 信使

acceptor 决策者

learner 学习者(学习最终决策)


准备阶段:

一个proposer向多个acceptor发出提案,每个提案有一个数字编号(递增的), 

如果多数acceptor接受了该提案,则进入批准阶段. 当然也可以拒绝。


批准阶段:

proposer得到了多数acceptor的接收反馈后,就向这些acceptors发起批准请求, 包括提案编号和value。

这些acceptor决定是否接受这个请求。


一旦批准,learner会通过某种方式获得最终决策的value.

两阶段的是可以被中断的,不会造成不一致。


如果要深究算法,请参考http://zh.wikipedia.org/zh-cn/Paxos%E7%AE%97%E6%B3%95






Paxos算法介绍

原文:http://blog.csdn.net/csfreebird/article/details/43973993

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!