Raft 共识算法

什么是木筏?

Raft 是一种共识算法,旨在易于理解。它 在容错和性能方面与Paxos相当。不同之处在于 它被分解成相对独立的子问题,而且它干净利落 解决了实际系统所需的所有主要部分。我们希望 Raft 能使 更广泛的受众可以达成共识,并且这个更广泛的受众将是 能够开发各种更高质量的基于共识的系统 今天可用。

等等------什么是共识?

共识是容错分布式系统中的一个基本问题。 共识涉及多个服务器就值达成一致。一旦他们达到 对一个值的决定,该决定是最终决定。典型的共识算法使 当他们的大多数服务器可用时,进度;例如,一个 即使 5 台服务器发生故障,由 2 台服务器组成的群集也可以继续运行。 如果更多的服务器出现故障,它们将停止前进(但永远不会返回 不正确的结果)。

共识通常出现在复制状态机的上下文中,一个 构建容错系统的一般方法。每个服务器都有一个状态 机器和日志。状态机是我们想要制作的组件 容错,例如哈希表。在客户看来,他们是 与单个可靠的状态机交互,即使少数 群集中的服务器出现故障。每个状态机都从以下位置获取输入命令 它的日志。在我们的哈希表示例中,日志将包含诸如 set 这样的命令x 到 3 。共识算法用于就 服务器的日志。共识算法必须确保如果任何状态机 将集合 x 应用于 3 作为 n 第命令,没有其他 状态机将永远应用不同的 n第命令。作为 结果,每个状态机处理相同系列的命令,因此 生成相同系列的结果并达到相同系列的状态。

木筏可视化

这是在浏览器中运行的 Raft 集群。您可以与它交互以查看 木筏在行动。左侧显示五台服务器,其日志显示在 右边。我们希望尽快创建一个截屏视频来解释正在发生的事情。这 可视化 (RaftScope) 边缘仍然很粗糙;非常欢迎拉取请求。

相关推荐
小侯不躺平.1 分钟前
C++ Boost库【2】 --stringalgo字符串算法
linux·c++·算法
流年如夢14 分钟前
二叉树详解
c语言·数据结构·算法
xiaoxiaoxiaolll22 分钟前
Nature Communications:三维超原子库+原子层保护,突破全彩VR超透镜量产瓶颈
人工智能·算法
仍然.23 分钟前
算法题目---栈
算法
feifeigo12326 分钟前
基于布谷鸟算法的配电网分布式电源选址定容 MATLAB 实现
开发语言·算法·matlab
MicroTech20251 小时前
微算法科技(NASDAQ: MLGO)噪声图像的量子图像边缘提取算法:技术革新与产业赋能
科技·算法·量子计算
大模型最新论文速读1 小时前
EvoLM:8B 模型自写评分标准,RL 后超越 GPT-4
人工智能·深度学习·算法·机器学习·自然语言处理
木子墨5161 小时前
工程算法实战 | 从LRU到手写本地缓存:LinkedHashMap → 双向链表+哈希表 → Caffeine 原理
java·数据结构·算法·链表·缓存
数智工坊1 小时前
【Offline RL1】离线强化学习全景:从基础理论到前沿算法与工业落地
算法
流年如夢1 小时前
二叉树(LeetCode)
数据结构·算法·leetcode·职场和发展