文档章节

学习 MongoDB 选举机制

UMU
 UMU
发布于 2018/05/31 18:25
字数 198
阅读 30
收藏 0

为了快速了解 MongoDB 选举机制,在网上找了一些文章来学习,后来发现里面提到的一些机制都过时了,尝试看代码了解,发现协议有 PV0 和 PV1 两种。

代码:https://github.com/mongodb/mongo/blob/r3.6.5/src/mongo/db/repl/topology_coordinator.cpp

一篇比较新的参考文章:https://blog.csdn.net/wentyoon/article/details/78986174

如果新选举出的主节点立马挂掉,至少需要 30s 重新选主,这个是由 leaseTime 常量决定的:

const Seconds TopologyCoordinator::VoteLease::leaseTime = Seconds(30);

PV0 时,一个反对会将最终票数减 10000,即在绝大多数情况下,只要有节点反对,请求的节点就不能成为主节点,由 prepareElectResponse 函数实现,里面有不少 vote = -10000;,PV1 版本取消了否决票。

© 著作权归作者所有

UMU

UMU

粉丝 119
博文 112
码字总数 44043
作品 0
厦门
程序员
私信 提问
搭建高可用mongodb集群(三)—— 深入副本集内部机制

在上一篇文章《搭建高可用mongodb集群(二)—— 副本集》 介绍了副本集的配置,这篇文章深入研究一下副本集的内部机制。还是带着副本集的问题来看吧! 副本集故障转移,主节点是如何选举的?...

观澜而索源
2014/02/17
0
0
redis, memcached, mongo性能比较

1、性能 都比较高,性能对我们来说应该都不是瓶颈 总体来讲,TPS方面redis和memcache差不多,要大于mongodb 2、操作的便利性 memcache数据结构单一 redis丰富一些,数据操作方面,redis更好一...

无精疯
2018/04/23
0
0
MongoDB深圳用户组线下活动来了

MongoDB线下用户组是由全世界MongoDB爱好者发起的不定期线下交流活动。目前全球有100多个MongoDB用户组,3万5千多爱好者参与。用户组活动的形式通常会有一到两个MongoDB相关的技术分享。分享...

MongoDB中文社区
2016/07/02
0
0
Redis,Memcache,mongoDB的区别

从以下几个维度,对redis、memcache、mongoDB 做了对比,欢迎拍砖 1、性能 都比较高,性能对我们来说应该都不是瓶颈 总体来讲,TPS方面redis和memcache差不多,要大于mongodb 2、操作的便利性...

Surjur
2014/12/02
0
0
从以下几个维度,对redis、memcache、mongoDB 做了对比

1、性能 都比较高,性能对我们来说应该都不是瓶颈 总体来讲,TPS方面redis和memcache差不多,要大于mongodb 2、操作的便利性 memcache数据结构单一 redis丰富一些,数据操作方面,redis更好一...

安安-Anan
2015/08/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Archsummit 2019重磅分享|闲鱼Flutter&FaaS云端一体化架构

作者:闲鱼技术-国有   讲师介绍 国有,闲鱼架构团队负责人。在7月13号落幕的2019年Archsummit峰会上就近一年来闲鱼在Flutter&FaaS一体化项目上的探索和实践进行了分享。 传统Native+Web+...

阿里云云栖社区
9分钟前
0
0
总结无线AP与AC之间的各种问题

无线网络搭建中,都说AP+AC的组网模式最现在最先进的,但是在使用过程中还是存在一些问题,下面这些有没有大家碰到的呢? 无线网络搭建中,都说AP+AC的组网模式最现在最先进的,但是在使用过程...

Linux就该这么学
17分钟前
1
0
bootstrap 图标使用说明

1、小图标使用说明 <i class="fa fa-search"></i>详情<a class="btn btn-warning btn-xs"><i class="fa fa-search"></i>搜索</a> 2、元素背景颜色 我们先来看看元素背景的颜色有哪几......

moon888
19分钟前
0
0
windows 远程下载sftp 服务器 文件

下载 putty https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 把安装后的 psftp.exe 放到需要下载文件的目录 尝试执行远程连接 运行 psftp.exe open : 111:111:111:111 录入...

donald121
35分钟前
3
0
阿里、网易和腾讯面试题 C/C++

一、线程、锁 1、Posix Thread互斥锁 线程锁创建 a.静态创建 pthread_mutex_tmutex = PTHREAD_MUTEX_INITIALIZER; b.动态创建 pthread_mutex_tmutex = pthread_mutex_init(pthread_mutex_t*......

linux服务器架构
36分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部