当前位置:嗨网首页>书籍在线阅读

03-理解复制策略

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

23.1.1 理解复制策略

决定如何部署MongoDB副本集时,需要考虑多个因素。接下来的几小节讨论实现MongoDB副本集时需要考虑的一些因素。

服务器数量

第一个问题是,在副本集中包含多少个服务器。这取决于客户端与数据交互的方式。如果客户端主要是写入数据,使用大量服务器并不能带来多大好处。然而,如果数据大多是静态的,但有大量的写入请求,则添加更多备份服务器肯定会有很大的影响。

副本集数量

另外,还需考虑数据。在有些情况下,将数据拆分到多个副本集,让每个副本集包含不同部分的数据更合适。这让您能够根据数据的特征和性能需求微调每个副本集中的服务器。仅当数据之间没有相关性,客户端访问数据时很少需要连接到多个副本集时,才应考虑这样做。

容错

对应用程序来说容错有多重要?主服务器只是偶尔出现故障,如果这不会影响应用程序,且可轻松地重建数据,也许不需要复制。然而,如果您向客户承诺了提供七个9的可用性,那么任何中断都是极其糟糕的,而长时间中断更是无法接受的。在这种情况下,在副本集中添加服务器以确保可用性是合适的。

需要考虑的另一点是,将一个备份服务器放在备用数据中心,以防整个主数据中心出现故障。然而,出于性能考虑,应将大部分服务器都放在主数据中心。

提示:

如果很看重容错,还应启用日记功能(参见第1章)。启用日记功能后,即便数据中心发生电源故障,也可重放事务。