- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
专题21:Raft协议(史上最全、定期更新)
本文版本说明:V2
此文的格式,由markdown通过程序转成而来,由于很多表格,没有来的及调整,出现一个格式
问题,尼恩在此给大家道歉啦。
由于社群很多小伙伴,在面试,不断的交流必威体育精装版的面试难题,所以,《Java面试红宝书》,后面
会不断升级,迭代。
本专题,作为《Java面试红宝书》专题之一,《Java面试红宝书》一共30个面试专题,后续还
会增加
《Java面试红宝书》升级的规划为:
后续基本上,每一个月,都会发布一次,必威体育精装版版本,可以扫描扫架构师尼恩微信,发送“领取电子书”
获取。
尼恩的微信二维码在哪里呢?请参见文末
面试问题交流说明:
如果遇到面试难题,或者职业发展问题,或者中年危机问题,都可以来疯狂创客圈社群交流,
加入交流群,加尼恩微信即可,
入交流群,加尼恩微信即可,发送“入群”
raft算法之所以容易理解,其一是他将一致性问题划分成几个子问题,这几个子问题都是独立、可理解
和解释的。从传统的思维来讲,对于一个复杂的系统或者工程,都是大化小,分解实现,然后去尝试融
合解决整体逻辑。
1、Raft详解
Raft算法是分布式系统开发首选的共识算法。比如现在流行Etcd、Consul、Nacos。
如果掌握了这个算法,就可以较容易地处理绝大部分场景的容错和一致性需求。比如分布式配置系
统、分布式NoSQL存储等等,轻松突破系统的单机限制。
Raft算法是通过一切以领导者为准的方式,实现一系列值的共识和各节点日志的一致。
page:1/15of尼恩Java硬核架构班:狠卷3高架构,卷透底层技术,走向技术自由!
1.1Raft角色
跟随者(Follower):普通群众,默默接收和来自领导者的消息,当领导者心跳信息超时的时候,就
主动站出来,推荐自己当候选人。
候选人(Candidate):候选人将向其他节点请求投票RPC消息,通知其他节点来投票,如果赢得了
大多数投票选票,就晋升当领导者。
领导者(Leader):霸道总裁,一切以我为准。处理写请求、管理日志复制和不断地发送心跳信息,
通知其他节点“我是领导者,我还活着,你们不要”发起新的选举,不用找新领导来替代我。
如下图所示,分别用三种图代表跟随者、候选人和领导者。
1.1数据库服务器
现在我们想象一下,有一个单节点系统,这个节点作为数据库服务器,且存储了一个值为X。
左边绿色的实心圈就是客户端,右边的蓝色实心圈就是节点a(Nodea)。Term代表任期,后面会讲
到。
page:2/15of尼恩Java硬核架构班:狠卷3高架构,卷透底层技术,走向技术自由!
客户端向单节点服务器发送了一条更新操作,设置数据库中存的值为8。单机环境下(单个服务器节
点),客户端从服务器拿到的值也是8。一致性非常容易保证。
但如果有多个服务器节点,怎么保证一致性呢?比如有三个节点:a,b,c。如下图所示。这三个节点
组成一个数据库集群。客户端对这三个节点进行更新操作,如何保证三个节点中存的值一致?这个就是
您可能关注的文档
- 专题01:JVM面试题(史上最全 + 2024面试必备.pdf
- 专题02:Java算法面试题(史上最全 + 2024面试必备).pdf
- 专题04:架构设计面试题(史上最全 + 2024面试必备).pdf
- 专题05:Spring面试题__专题06:SpringMVC__专题07:Tomcat面试题(史上最全 + 2024面试必备).pdf
- 专题09:网络协议面试题(史上最全 + 2024面试必备).pdf
- 专题10:TCPIP协议(史上最全 + 2024面试必备).pdf
- 专题11:JUC并发包与容器类(史上最全 + 2024面试必备).pdf
- 专题12:设计模式面试题 (史上最全 + 2024面试必备).pdf
- 专题14:Redis 面试题 (史上最全 + 2024面试必备).pdf
- 专题15:分布式锁 面试题(史上最全 + 2024面试必备).pdf
- 2024九年级化学上册第二单元空气物质的构成与组成2.1空气的成分第1课时空气的成分习题课件科学版 (1).pptx
- 2024九年级化学上册第二单元空气物质的构成与组成2.1空气的成分第2课时氮气和稀有气体的用途混合物和纯净物习题课件科学版.pptx
- 2024九年级化学上册第二单元空气物质的构成与组成2.1空气的成分第3课时空气的污染与保护习题课件科学版.pptx
- 架空配电线路10KV带电作业操作规程参考.docx
- 物流配送工作总结范文10篇.docx
- 2024九年级化学上册第二单元空气物质的构成与组成2.2构成物质的微观粒子第2课时原子是什么习题课件科学版.pptx
- 2024九年级化学上册第二单元空气物质的构成与组成2.2构成物质的微观粒子第1课时分子是什么习题课件科学版.pptx
- 精品解析:2022-2023学年广东省茂名市化州市部编版五年级下册期末考试语文试卷(解析版).docx
- 十一回家转角之恋29剧本.pdf
- 企业三方合伙经营合同书(30篇).docx
文档评论(0)