raft 一致性算法

本文介绍了Redis使用raft leader election进行master选举的过程。一个cluster中有多个node,状态分leader、follower和candidate。当followers选举超时,会变为candidate发起选举。同时还阐述了日志复制,client发送change到leader,leader记录并发送给followers,多数回复后标记为committed。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

选举master过程

redis使用raft leader election进行master选举。

概念:

一个cluster中有多个node,最终状态有一个leader,多个follower。

leader通过heartbeat周期性和follower通信。

node有三种状态:leader,follower,candidate(leader候选人)

 

什么时候开始选举?

如果followers在一定时间没有接收到leader的heartbeat message(称之为选举超时election timeout,比如election timeout 是一个150ms-300ms中的随机数,为了避免)followers认为cluster中没有leader,follower变成candidate,发起选举,要求其他节点进行投票。

 

选举过程:

某一个或多个followers的election timeout达到,该follower变为candidate,开始自己的任期(当前term+1),并向其他node发送请求投票(Request Vote)的message,让他们给自己投票。

如果接收到Request Vote的node本term内没有投票,那么该node投票给这个candidate,同时重置自身的election timeout。

一旦某一candidate获得多数投票,它成为leader。

一轮投票的结果可能有:

1.某一node获得majority vote,成为leader。

2.没有节点获得majority vote。candidate到达自己的election timeout,再次开始重新选举。因为每个node的timeout是一个随机值,能够确保不会产生无限的选举循环,在一定数量的选举轮次后能够选出leader。

 

选举规则:

一旦一个candidate获得多数投票,它成为leader。

每个node在一个term内最多投票一次。

成为leader的node通过发送heartbeat给其他node,通知leader选举完成,并重置其它node的election timeout。

 

日志复制

client发送change到leader,leader记录该change到自身的log(称之为一个log entry),之后通过heartbeat发送该change到followers。

在多数followers回复已接收到该change时(acknowledaged),leader的log中的一个entry被标记为committed。leader 发送回复给client,声明该change已完成。一旦follower知道log entry已经被committed,那么他也会将这个log entry应用到本地的log中。

Refs:

https://www.jianshu.com/p/32813075a7e7

https://github.com/maemual/raft-zh_cn/blob/master/raft-zh_cn.md

http://thesecretlivesofdata.com/raft/

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值