1.Paxos概念
Basic Paxos:多个节点就某一个值达成共识
Muliti Paxos:多个节点就一系列值达成共识
2.Raft:通过一切以领导者为准,实现一系列值的共识和节点日志的一致
3.Raft成员分成:领导者、候选人、跟随者
4.Raft的日志,作用是保持各节点数据的一致,实现一致性。
实现一致的方法是需要倒着检查索引值检查不一样的位置。
5.一致哈希:解决的是普通的哈希算法数据可能迁移过多的问题。
使用一致哈希使得key会确定属于哪个桶,当没有那么多节点时就顺时针找下一个节点。
6.Gossip实现最终一致性的三板斧:直接邮寄、反熵、谣言传播
反熵的意思是两个节点交换数据。直接邮寄和谣言传播的区别是别人是否会复制消息。
7.QurnumNWR
W和R分别代表多少节点写入成功和多少节点读取成功,当这两个加起来大于N即副本数的时候,就可以实现强一致性。不需要所有节点都成功也可以立马读取到最新的值,只要满足这个要求。
8.PBFT:解决拜占庭叛将的问题,通过签名来约束减少确认的轮数,这里的签名是独一的不可以被仿造的。类似的现实中的东西就是古代将军使用的虎符。