zoukankan      html  css  js  c++  java
  • 分布式中心化和去中心化思想


    1.中心化思想:
    * 一个领导多个干活的
    * 领导负责将任务分配给合适的人
    * 当领导发现某个干活的存在故障时,及时剔除该成员,并替换上候补成员

    存在问题:领导发生故障,则系统崩溃
    解决方案:master-slave
    * 当master发生故障时,slave直接接管master的工作

    2.去中心化思想:
    * 没有领导和干活的区别,地位平等
    * 当某个模块出现问题时,仅仅局限于当前模块,而不影响全局

    脑裂
    - master发生问题之后,自动恢复,此刻存在两个master,干活的不知道该听谁的

    解决方案:
    * 选举机制
    - master和slave之间保持通信,如果master发生故障,slave接收消息并通知下面成员
    - 成员跟master和slave保持通信,当master发生故障并接收到slave通知时,开启选举机制,票数大于总数的一半,则slave升级成master,并将master干掉
    - 被替换的master被修复后,自动转换成slave
    * 租赁机制
    - 既然slave已经升级成了新的master了,将会重新获取lease(租赁)权
    - 老的master的lease则过期,与monitor通信时,会失败

  • 相关阅读:
    二维树状数组(模板)
    3033太鼓达人
    2503相框
    Ant Trip(画几笔)
    [ZJOI2004]嗅探器
    [USACO06JAN]冗余路径Redundant Paths(缩点)
    P3806 【模板】点分治1
    P4149 [IOI2011]Race
    P2634 [国家集训队]聪聪可可
    P4178 Tree
  • 原文地址:https://www.cnblogs.com/pretttyboy/p/14767654.html
Copyright © 2011-2022 走看看