简单的描述下MongoDB选举流程

1、副本集中的主节点选举必须满足“大多数”的原则,所谓“大多数”是指副本中一半以上的成员。副本集中成员只有在得到大多数成员投票支持时,才能成为主节点。例如:有N个副本集成员节点,必须有N/2+1个成员投票支持某个节点,此节点才能成为主节点。注意:副本集中若有成员节点处于不可用状态,并不会影响副本集中的“大多数”,“大多数”是以副本集的配置来计算的。

2、仲裁节点(Arbiter)它并不保存数据,并且不能被选举为主节点,但是具有投票权。仲裁节点使用最小的资源,不能将Arbiter部署在同一个数据集节点中。

3、副本集中最好是有奇数个成员节点,如果有偶数个节点,最好加一个仲裁节点。若副本集中有偶数个成员节点,如图2所示,IDC1网络连不通IDC2,IDC1和IDC2内的成员节点分别会发生选举主节点的行为,然而选举因都无法满足大多数的原则,都不能选出主节点;加入一个仲裁节点之后,则副本集就能满足大多数原则,从中选出主节点了。

4.如果副本集成员节点数量是奇数,就不再需要仲裁者。但是如果在成员节点是奇数时,强行使用仲裁者,会导致选举耗时变长。由于添加了仲裁者就可能出现两个成员节点票数相同的情况,从而导致选举耗时变长。

5.若在一轮投票中,副本集中成员节点被投了反对票,则本轮不能被选为主节点。例如,在一个10个成员节点的副本集,某轮投票中,成员节点A由于数据延迟较大被某个成员节点投了反对票,则A同时收到了9票赞成票,然而A仍然不能被选为主节点。

6.集群中的优先级为0的节点不能成为主节点,并且不能触发选举,但是具有投票权,并且拥有与主节点一致的数据集。

2021-05-12 MongoDB面试题 简单的描述下MongoDB选举流程相关推荐

  1. linux下打开Mongodb命令行窗口,Linux系统下MongoDB的安装与基本操作

    Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前IT从业人员的青睐.Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo ...

  2. 【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-010(转轮机加密)

    文章目录 前言 一.转轮机加密 二.使用步骤 1.下载附件 2.脚本解密 总结 前言 题目描述:你俩继续往前走,来到了前面的下一个关卡,这个铺面墙上写了好多奇奇怪怪的 英文字母,排列的的整整齐齐,店面 ...

  3. 【愚公系列】2021年12月 攻防世界-简单题-MOBILE-010(easy-dex)

    文章目录 前言 一.easy-dex 二.使用步骤 1.dex和odex文件结构 2.jadx分析apk 3.IDA 4.jadx打开easy-dex.dex 总结 前言 APK解包后是没有dex文件 ...

  4. 【愚公系列】2021年12月 攻防世界-简单题-REVERSE-005(game)

    文章目录 一.game 二.使用步骤 1.IDA静态分析 2.OD动态分析 总结 一.game 题目链接:https://adworld.xctf.org.cn/task/task_list?type ...

  5. 【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-002(Caesar)

    文章目录 前言 一.Caesar 二.使用步骤 1.下载附件 2.凯撒密码 总结 前言 题目描述:你成功的解出了来了灯谜,小鱼一脸的意想不到"没想到你懂得这么多啊!" 你心里面有点 ...

  6. ajax请求整理(一) 2021.05.12

    关于整理Ajax请求的整理. ·····首先Ajax就是起一个异步不刷新页面的作用,就只是局部刷新,地址栏不变,归纳为一句话就是: ·····AJAX 是一种在无需重新加载整个网页的情况下,能够更新部 ...

  7. 【愚公系列】2021年12月 攻防世界-简单题-MOBILE-002(app1)

    文章目录 一.app1 二.答题步骤 1.运行app 2.jadx反编译apk文件 总结 一.app1 题目链接:https://adworld.xctf.org.cn/task/task_list? ...

  8. 【愚公系列】2021年12月 攻防世界-简单题-CRYPTO-003(Morse)

    文章目录 前言 一.Morse 二.使用步骤 1.下载附件 2.莫尔斯电码 总结 前言 题目描述:小鱼得意的瞟了你一眼,神神气气的拿走了答对谜语的奖励,你心里暗暗较劲 想着下一个谜题一定要比小鱼更快的 ...

  9. 【愚公系列】2021年12月 攻防世界-简单题-REVERSE-001(Hello, CTF)

    文章目录 一.Hello, CTF 二.使用步骤 1.IDA 总结 一.Hello, CTF 题目链接:https://adworld.xctf.org.cn/task/task_list?type= ...

最新文章

  1. 微信的充值页面为啥长这样?(多图)
  2. CSS常见的四种垂直居中的方法
  3. 在linux中 要删除abc目录,操作系统原理与应用(linux)A卷
  4. sqlite事务模型、性能优化tips、常见误区
  5. JAVA移慎_java里面给对象赋值,慎用赋值符号(=) (转)
  6. 【Vue2.0】—ref属性(十四)
  7. 计算机桌面桌面设置动态视频,电脑壁纸 篇一:电脑设置动态视频桌面图文教程...
  8. Java开发快递物流项目(5)
  9. EAS 后台事务配置
  10. 集成电路的设计 —— 晶体管
  11. “天外来客”讲述太阳系“童年”故事
  12. 分享前端网站模板,HTML5的响应式设计模板
  13. Vue.js devtools官网最新下载 中文,绿色版Vue.js devtools下载谷歌插件
  14. wtc java 代码 tpcall(servicename_[转载]Dorado+Spring+Wtc+Tuxedo开发
  15. 《k3s 源码解析3 ---- k3s集群搭建》
  16. java设计功能怎么实现代码_Java中的门面设计模式及如何用代码实现
  17. python爬取各类基金数据,以『动图可视化』方式展示基金的涨跌情况
  18. Window对象简介
  19. word中如何美观插入代码?
  20. 解读MIUI 6背后四大布局,三层风险

热门文章

  1. Python量化选股入门:资本资产定价模型(CAPM)
  2. CAD网页Web端显示开发为什么要以WebGIS的思路来开发?
  3. 三小时学会css(菜鸟教程精华版)【上】
  4. 神经网络训练的一般步骤,神经网络训练过程详解
  5. ios xmpp研究探索:删除好友
  6. pwn暑假训练(九) emem原来昨天是8今天是9
  7. 凑个热闹,分析下Padavan的代码,一
  8. 怎么把分开的pdf放在一起_怎么把连一起的pdf分开
  9. 简述思科、华为交换机型号字母代表的意思
  10. python爬虫小项目挣钱兼职,python程序员兼职平台