mongo复制集

107 阅读1分钟

1. mongo单点问题

  • 单点故障:节点出现故障时不能向业务提供正常服务,无法保证系统高可用。
  • 数据丢失:一旦服务器磁盘损坏数据容易丢失。

2. 复制集介绍

  • 由一组mongo实例组成,包括primary节点,多个secondary节点。
  • primary负责写,secondary负责读,并从primary节点同步数据,保证所有节点数据一致。
  • primary故障时,在secondary节点选举新的主节点。

2.1 PSS模式(官方推荐)

​编辑

始终有两个副本集同步主节点数据,主节点挂掉后通过raft策略在从节点选出新主。旧主恢复后重新加入集群。

​编辑

2.2 PSA模式

​编辑

仲裁节点(Arbiter): 负责选举主节点、不存储数据,也不支持读写操作。挂掉不会影响业务,只影响选举。

FailOver:  提升从节点为主节点

​编辑

话外音:

CAP理论: 分布式系统中一致性(consistency)、可用性(available)、分区容错(partition tolerance)只能满足其二,不能三者同时满足。

raft协议: 分布式系统中的共识算法,解决分布式系统中的一致性问题。

一致性:顺序一致性、线性一致性、因果一致性

Q: 副本集群的复制原理是啥?

Q: raft究竟咋选举的?咋复制日志的?mongo又做了哪些调整?

不要着急,容我慢慢将来...

没有行动力,世界只是个概念;行动力:把模糊的东西具体化。