之前写了一篇 paxos的直观解释 , 用简单的语言描述了 paxos 的工作原理, 看过的朋友说是看过的最易懂的paxos介绍, 同时也问我是否也写一篇 raft 的. 但 raft 介绍文章已经很多很优质了, 感觉没什么可写的, 就一直拖...
上次跟好基 黄东旭 在咖啡厅撩天的时候谈笑风生地探讨了一个 TiDB 使用 Raft 时遇到的问题:
另外一个经常被提及的分布式算法是[raft], raft的贡献在于把一致性算法落地. 因为 [Leslie Lamport] 的理论很抽象, 要想把他的理论应用到现实中, 还需要工程师完全掌握他的理论再添加工程必要的环节才能跑起来....
Paxos和Raft对节点的前提假设是不作恶,只是偶尔可能不响应而已。而真实情况是节点可能会作恶(伪造消息),在这样的场景下,如何在众多节点中达成一致性问题,这是拜占庭将军问题所要讨论的。...
看过之前几期的朋友们应该知道在1号第1期最初的时候就实现过一次raft,但之前实现基本是基于python实现的,这次可结合着PBFT,用golang实现了raft。
按某文分类将共识机制算法分为:证明类(适用于较大范围的区块链平台,可参考分层或者较大用户结合跨链技术一起使用),拜占庭故障类(主要包括拜占庭容错类算法,PBFT、RBFT等一些改进算法,为了解决一些拜占庭将军问题,防止恶意节点...
该算法是继raft算法之后的再一次深入实践的共识算法,与raft、paxo一样都可以看作是分布式一致性算法。
背景:共识机制-所谓共识,就是多个节点对某个事情达成一致的看法,即使是在部分节点故障、网络延时、网络分割的情况下。
近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。...