wxvirus wxvirus
首页
  • Go文章

    • Go语言学习
  • Rust

    • Rust学习
  • Java

    • 《Java》
  • Python文章

    • Python
  • PHP文章

    • PHP设计模式
  • 学习笔记

    • 《Git》
  • HTML
  • CSS
  • JS
  • 技术文档
  • GitHub技巧
  • 刷题
  • 博客搭建
  • 算法学习
  • 架构设计
  • 设计模式
  • 学习
  • 面试
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

无解的lifecycle

let today = new Beginning()
首页
  • Go文章

    • Go语言学习
  • Rust

    • Rust学习
  • Java

    • 《Java》
  • Python文章

    • Python
  • PHP文章

    • PHP设计模式
  • 学习笔记

    • 《Git》
  • HTML
  • CSS
  • JS
  • 技术文档
  • GitHub技巧
  • 刷题
  • 博客搭建
  • 算法学习
  • 架构设计
  • 设计模式
  • 学习
  • 面试
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • C&C++

  • PHP

  • Python

  • Go

  • microservice

  • rust

  • Java

  • 学习笔记

    • 《Git》学习笔记
    • MySQL基础学习
    • redis基础
    • redis了解
    • MySQL事务并发问题
    • MySQL事务隔离级别
    • 单点登录token与JWT介绍
    • MySQL约束条件
    • redis持久化机制以及缓存过期和淘汰策略
    • redis数据类型
    • consul的raft算法
      • Raft 算法
        • 重要因素
        • 角色
  • 后端
  • 学习笔记
wxvirus
2023-01-15

consul的raft算法

# consul 集群角色选举 Raft 算法

# Raft 算法

  • 解决了分布式中领导选举和一致性问题
  • 比较出名的共识算法,比如redis哨兵模式和consul

# 重要因素

  • 任期机制,raft是终身任期的,只要服务没有问题,被选择的领导者节点一直都是领导者
  • 心跳机制,它决定领导者是否能有效的和跟随者通信
  • 随机的选举超时时间
  • 先到先得
  • 过半投票机制,收到过半的投票才能算领导者

# 角色

  • Follower追随者,接受领导者发送的消息,当心跳超时时,主动推荐自己为候选人
  • Candidate候选人,发送rpc消息,让其他节点投票给自己,票数过半时,成为领导者
  • Leader领导者,向其他节点发送心跳,只要心跳不超时一直为领导者

raft 官网地址 (opens new window)

这里有一个动画,可以帮助我们进行理解。

编辑 (opens new window)
#consul
上次更新: 2023/01/15, 21:39:37
redis数据类型

← redis数据类型

最近更新
01
centos7安装redis6文档记录
02-14
02
portainer的安装
02-11
03
gin自定义验证器和翻译器
02-11
更多文章>
Theme by Vdoing | Copyright © 2021-2023 wxvirus
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式