mongodb用于生产环境大概有三种模式:
主从模式Master/slaves
副本集Replaction
分片模式Auto Shard
主从模式Master/slaves(已不推荐使用)
将读写分离,有效降低数据库的压力,实现数据的备份;
master出现故障,不能及时自动切换到slaves,需要手动干预;
副本集模式
数据复制,多份保存,每个副本保存一套完整的数据,避免了因一台机器出现问题导致数据丢失;
实现了数据读写分离,并有一套自己的选举机制,能通过自己的算法选举出当前最优的节点作为自己的活跃节点,一旦活跃节点宕机会选举出新的节点作为自己的活跃节点对外提供服务,其它节点继续作为复制节点,当原先的节点恢复,会自动作为非活跃节点存在;
自动选举活跃节点机制;
解决读多写少,扩展读性能;
多台机器同步数据,提供了数据的冗余,实现高可用;
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TP35EMJpHW2FjMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZwpmL5YTN2EDMyETMwMTOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
分片
解决处理大量的数据,将数据分开存储,不同的服务器保存不同的数据;
自动将数据分割成多个块,存储在不同的节点,每个被拆分的块都有三个副本集,为了数据备份和恢复;
追求高性能;