Raft 协议选举基本的概念 | 学习笔记

简介: 快速学习 Raft 协议选举基本的概念

开发者学堂课程【精通 Spring Cloud AlibabaRaft 协议选举基本的概念学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/634/detail/10105


Raft 协议选举基本的概念


内容介绍

一、Zab 算法怎么写

二、Raft 整个底层实现原理


一、Zab 算法怎么写

根据 zab 算法基本原则手写,启用时进行比较,先比较 zxidzxid 谁最大,谁就是 leaderzxid 相等,比较 myidmyid 谁最大,谁就是 leader,并且 leader 要满足票数过半。


二、Raft 整个底层实现原理

Raft 协议算法中分为的角色|名词:

1)状态:分为三种 跟随者、竞选者(候选人)、领导角色

注意:任何算法都是来源于生活

举个例子,Raft 协议类似于台湾选举,可以进行投票,会分为几个角色。跟随者只能进行投票,不能参与竞选。

竞选者好比台湾,分为两个党派,一个是民主党一个是国民党,民主党有蔡英文,国民党有韩国瑜,跟随者就要投票给竞选者,相当于要投给蔡英文还是韩国瑜。蔡英文、韩国瑜就相当于竞选者即候选人,投票的人就相当于跟随者。

第三种领导角色,相当于台湾选举,假如很多台湾人选了蔡英文,那么蔡英文成为领导角色。跟随者就是专门给别人投票的,竞选者就是被别人投票的有可能成为领导角色,领导角色只能有一个,不能有多个。

2)大多数: >n/2+1  3/2=1+1=2

n 表示集群总数节点,除以2表示什么呢,举个例子,假设 n=3,3/2=1(不等于0.5程序运算都整除),3/2=1+1=2,满足大于等于的情况下,就可以被使用。

3)任期:每次选举一个新的领导角色,任期都会增加

注意:任何算法都是来源于生活

比如选举第一届、第二届、第三届主席,一二三就表示第几任主席,表任期。

(4)竞选者谁的票数最多,谁就是领导角色

竞选者一定会成为领导角色吗?

不一定,看票数多少。

5)存在的疑问

多个竞选者,产生的票数都完全一样,谁到底是领导角色,服务器集群是偶数的情况下。

一旦集群是偶数,在除以2的情况下很容易产生相等票数。

这个问题只要集群是奇数的情况下是不可能存在的。

相关文章
|
算法 语音技术
基于MFCC特征提取和HMM模型的语音合成算法matlab仿真
基于MFCC特征提取和HMM模型的语音合成算法matlab仿真
|
19天前
|
数据采集 SQL 自然语言处理
脏数据不脏心:大数据平台的数据质量(DQ)入门实战与自动修复心法
脏数据不脏心:大数据平台的数据质量(DQ)入门实战与自动修复心法
131 20
|
安全 物联网 传感器
带你读《工业物联网安全》之一:一个前所未有的机会
本书为读者提供了针对IIoT安全各个方面的综合理解,以及用来构建部署安全IIoT解决方案的实践技术。书中介绍IIoT安全的基本原则、威胁模型、参考架构,以及现实生活中的实例分析学习,涵盖了用来设计基于风险安全控制方案的各种实用工具,并且深入讨论了多层防御相关技术,包括IAM、终端安全、互联技术以及基于边界和云环境的应用。读者能够从本书中获得保护IIoT生命周期流程、标准化、治理与评估新兴技术适用性方面的实用经验,从而实现成规模、可靠且具有社会效益的互联系统。
|
8月前
|
算法 数据可视化 数据挖掘
文献解读-The chromosome-scale genome of the raccoon dog: Insights into its evolutionary characteristics
该研究首次在染色体水平解析了貉的基因组特征,揭示了其生态入侵的分子机制,为入侵物种防控提供了靶点。此外,貉作为人兽共患病宿主,其免疫基因的解析对公共卫生风险评估具有重要价值。未来需结合全球种群样本,进一步探究入侵后的快速适应性进化规律。
197 0
|
数据采集 缓存 安全
2024年最佳http 代理 IP选择及其价格分析
2024年,多家服务商如快代理、123Proxy、巨量代理、IPIDEA等提供不同类型的代理IP,以满足数据采集、跨境电商等多种需求。
2024年最佳http 代理 IP选择及其价格分析
|
机器学习/深度学习 人工智能 架构师
|
人工智能 Java 物联网
C# 成为 2023 年度编程语言之王!
2023 年 TIOBE 年度编程语言已经正式公布,C# 在稳居前 10 名 20 多年之久后,首次摘下年度编程语言桂冠。TIOBE 数据显示,C# 在 2023 年的涨幅达 1.43%,远超过竞争对手 Scratch 的 0.83% 和 Fortran 的 0.64%。
823 1
C# 成为 2023 年度编程语言之王!
|
弹性计算 Ubuntu Linux
阿里云服务器操作系统选择,官方定制化系统镜像与第三方系统选择参考
阿里云服务器操作系统就是我们在购买阿里云服务器时看到的公共镜像,当前阿里云总共提供了Alibaba Cloud Linux镜像和第三方商业镜像及开源镜像合作的正版镜像两大类操作系统选择。有的新手用户看到这么多操作系统一般第一反应就是不知所措,那么阿里云服务器有哪些操作系统?应该如何选择?使用过程中是否可以更换系统?如何更换系统?本文来为大家一一解答。
阿里云服务器操作系统选择,官方定制化系统镜像与第三方系统选择参考
|
消息中间件 存储 缓存
高并发架构设计经验
高并发是从业务角度去描述系统的能力,实现高并发的手段可以采用分布式,也可以采用缓存等,当然也包括多线程、协程,但远远不仅如此;高并发的基本表现为单位时间内系统能够同时处理的请求数,高并发的核心是对资源的有效压榨,有限的资源应对大量的请求。
|
开发框架 Linux 开发者
深入了解Python游戏开发模块:pyglet
深入了解Python游戏开发模块:pyglet
463 0