分布式一致性算法
文章平均质量分 86
从CAP开始讨论共识算法的衍生过程
monkey-LaoA
一只不知名的程序员
展开
-
第四章-Raft共识算法(一)
相比于paxos,raft最大的特性就是 易于理解,为了达到这个目标,raft主要做了两个方面的事情:问题分解:把共识算法分为三个子问题,分别是领导者选举(leader election)、日志复制(log replication)、安全性(safety)状态简化:对算法做出一些限制,减少状态数量和可能产生的变动原创 2023-02-28 18:29:51 · 277 阅读 · 0 评论 -
第三章-Paxos
paxos算法是分布式系统中的一个共识算法家族,也是第一个被证明正确性的共识算法。“世界上只有两种分布式共识算法,一种是paxos算法,另外一种是类paxos算法”,现在比较流行的ZAB和RAFT算法也是基于Paxos算法而设计的,所以理解paxos对理解分布式一致性共识有重要意义。不喜欢看理论的直接跳到流程图,个人表示可以反推理论会更容易理解。2-1、Basic Paxos是在一轮决策中对一个或者多个被提议(propose)的值,最终选出一个值达成共识。原创 2023-02-28 16:48:14 · 248 阅读 · 0 评论 -
第二章-一致性
强一致性指的是数据复制的过程是同步的。任何一次读都能读到某个数据的最近一次写的数据,系统中的所有进程,看到的操作顺序,都和全局时钟下的顺序一致。弱一致性指的是数据复制的过程是异步的。数据更新后,能容忍后续的访问只能访问到部分或者全部访问不到,我们经常提到的最终一致性就是弱一致性的一致。问题:一个节点异常了,master会被阻塞,整个集群不可用,虽然保证了一致性,但不满足分区容错性了。中,一致性(Consistency)是指多副本(Replications)问题中的数据一致性。原创 2023-02-28 14:29:39 · 157 阅读 · 0 评论 -
第一章-CAP
一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项.一致性(Consistency):所有节点在同一时间的数据完全一致。可用性(Availability):服务在正常时间内一直可用。分区容错性(Partition tolerance):系统在遇到某节点或者网络分区故障的时候,仍然能够对外满足可用性或一致性的服务。原创 2023-02-28 14:07:55 · 67 阅读 · 0 评论