Paxos如何理解
这篇文章给大家介绍Paxos如何理解,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
成都创新互联主打移动网站、成都网站设计、做网站、网站改版、网络推广、网站维护、国际域名空间、等互联网信息服务,为各行业提供服务。在技术实力的保障下,我们为客户承诺稳定,放心的服务,根据网站的内容与功能再决定采用什么样的设计。最后,要实现符合网站需求的内容、功能与设计,我们还会规划稳定安全的技术方案做保障。
假设有一组可以提出提案的进程集合。一个一致性算法需要保证:在这些被提出的提案中,只有一个会被选定;如果,没有提案被提出,那么就不会有被选定的提案;当一个提案被选定后,进程应该可以获取被选定的提案信息。
对于一致性来说,安全性(Safety)需求就是这样的:
只有被提出的提案才能被选定。
只能有一个值被选定(chosen),同时
如果某个进程认为某个提案被选定了,那么这个提案必须是真的被选定的那个。
我们不会精确地描述活性(Liveness)需求。整体上来说,目标就是要保证最终有一个提案会被选定,当提案被选定后,进程最终也能获取到被选定的提案。 [†]译注
在该一致性算法中,有三种参与角色,我们用 Proposers , Acceptors 和 Learners 来表示。在具体的实现中,一个进程可能充当不止一种角色,在这里我们并不关心进程如何映射到各种角色。
假设不同参与者之间可以通过发送消息来通信,我们使用普通的非拜占庭模式的异步模型:
每个参与者以任意的速度执行,可能会出错而停止,也可能会重启。当一个提案被选定后,所有的参与者都有可能失败或重启,因此除非那些失败或重启的参与者可以记录某些信息,否则是不可能存在一个解的。
消息在传输中可能花费任意的时间,可能会重复,丢失,但是不会被损坏。
关于Paxos如何理解就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
分享标题:Paxos如何理解
文章出自:http://scyanting.com/article/ihesie.html