zoukankan      html  css  js  c++  java
  • 分布式存储的节点个数为什么必须是奇数

    为什么zoo-keeper 的节点必须是奇数个, 或者分布式存储的节点必须是奇数个

    1. 系统要求节点获得大多数支持时才可以更新数据,当集群脑裂时, 如果小集群的节点数相等,那么都没有大多数的支持,也就无法提供服务。
    2. 当集群恢复时,必须以大多数的小集群去覆盖少数的小集群, 如果平分了集群,则无法恢复数据

    分布式存储的目标和不可能三角CAP

    CAP很多人都知道,图片也很清除了。这里不多说

    分布式的算法 Raft 简介

    Raft 涉及的阶段

    1. 选举: 每个集群都要有领导节点。选举等待超时后, 节点向其它节点拉票, 得到majority票的节点成为领导节点
    2. 二段提交: 领导节点接受更新请求,并保存到binlog, 然后同步binlog 到其它节点, 同步成功之后。领导节点提交,然后通知其它节点提交
    3. 心跳超时: 领导节点定时向所有节点发送心跳,收到心跳后,重置心跳超时,如果心跳超时,则节点会发起新的选举

    Raft 的流程

    1 -> 2 -> 3 -> 1 循环

    心跳办法, 有java的 jgroups

    最后raft 官网

    https://raft.github.io/

  • 相关阅读:
    6次作业
    5次作业
    4次作业
    3次作业
    first 作业
    pycharm快捷键
    python基础知识记录
    Jenkins+sonar+tomcat+SVN集成搭建
    成为1个技术大牛的入门到进阶之路(学习路线图)
    记一次收到QQ邮箱钓鱼邮件经历
  • 原文地址:https://www.cnblogs.com/hustcpp/p/12424979.html
Copyright © 2011-2022 走看看