Update MongoDB_复制.md
This commit is contained in:
parent
b02e1c0470
commit
d3d5636733
@ -22,10 +22,12 @@
|
||||
|
||||
### 1.1 复制功能
|
||||
|
||||
为保证数据安全,实现高可用,MongoDB 提供了复制功能,可以将主节点上的数据复制到多个从节点上,这样即便主节点异常,由于数据是以多副本的方式存储,仍然可以保证数据安全。一个标准的三节点的副本集的架构如下:
|
||||
为保证数据安全,实现高可用,MongoDB 提供了复制功能,可以将主节点上的数据复制到多个从节点上,这样即便主节点出现异常,由于数据是以多副本的方式进行存储,仍然可以保证数据安全。一个标准的三节点副本集架构如下:
|
||||
|
||||
<div align="center"> <img src="../pictures/mongodb-复制.png"/> </div>
|
||||
|
||||
复制过程如下:
|
||||
|
||||
#### 1. 初始同步
|
||||
|
||||
在副本集初始化时,主节点的 mongod 进程会扫描当前节点上每个数据库中的每个集合,然后将这些数据发送给从节点,进行初始化的全量复制。
|
||||
@ -69,7 +71,7 @@ MongoDB 的选举算法会尝试让高优先级的节点优先发起选举,从
|
||||
- **ARBITER**:ARBITER 状态的成员不复制数据或接受写入操作,仲裁者通常处于这一状态。
|
||||
- **ROLLBACK**:如果成员正在进行数据回滚,它就处于 ROLLBACK 状态。
|
||||
|
||||
除了投票成员外,那些持有副本集数据的副本,并且可以接受来自客户端应用程序的读取操作,但没有投票权的成员统称为非投票成员。出于网络通讯成本的考虑,MongoDB 的副本集最多有 50 个节点(成员),默认情况下最多可包含7个投票成员。投票成员和非投票成员的要求如下:
|
||||
除了投票成员外,那些持有副本集数据的副本,并且可以接受来自客户端应用程序的读取操作,但没有投票权的成员统称为非投票成员。出于网络通讯成本的考虑,MongoDB 的副本集最多有 50 个节点(成员),默认情况下最多可包含 7 个投票成员。投票成员和非投票成员的要求如下:
|
||||
|
||||
+ 非投票成员的优先级 `members[n].priority` 必须为 0,优先级为 0 的成员不能寻求选举,也不能成为主节点。
|
||||
+ 优先级大于 0 的节点持有的票数 `members[n].votes` 不能为 0,该参数默认值为 1,可选值为 1 或 0。
|
||||
|
Loading…
x
Reference in New Issue
Block a user