
bully算法
Bully算法是一种协调者(主节点)竞选算法,主要思想是集群中的每个成员都可以声明它是主节点并通知其他节点。其他节点可以选择接受这个声明或者拒绝并进入主节点竞争。被其他所有节点接受的节点才能成为主节点。节点按照一些属性(比如进程ID)来判断应该接受谁胜出。Mongo早期的版本便是采用bully进行主节点选取。

raft算法

paxos一致性算法
在分布式的环境下,保持状态数据的一致性非常重要,目前的分布式系统大多采用最终一致性算法。其中比较有名的便是paxos。比如mongo,

红黑树
二叉搜索树可以快速定位一个给定关键字的数据项,可以快速插入和删除数据。二叉树存在一个问题,如果插入的数据是正序或者逆序的数据,二叉搜索树的执行会变慢,因为有序的二叉树是非平衡的,此时的二叉树类似与链表。 红黑树,基于二叉搜索树,二叉搜索树可以快速地找到一个给定的关键字的数据项,并且可以快速地插入和删除数据项。以较...