OPTIONS
翻译或纠错本页面

复制集的读与写

无论MongoDB是以单个节点 (i.e. “单节点” )或是复制集的形式运行,对于应用程序来说它都是透明的。

默认情况下,MongoDB的读请求将会在 主节点 上执行,并一直与最后一次写操作保持数据的 一致性

用户可以配置每一个连接的 复制集读选项 来让其将读请求发送到 从节点 上。

这种情况的出现一般与数据的 最终一致性 有关因为虽然从节点的数据集最终会与主节点一致,但当在从节点上进行读操作的时候,MongoDB不能保障数据的 严格一致性

为了确保从从节点上进行读操作时的数据一致性,我们可以配置 客户端 来确保写操作在应用到复制集中所有节点后才算成功完成。 参见 写关注 以获得更多信息。此外,这样的配置也可以在故障切换的时候防止 故障切换时的回滚

注解

在分片为复制集的 分片集群 中也需要注意读操作与写操作的操作语义。

复制集的安全写级别

安全写级别确保了应用程序写入MongoDB的操作的成功。

复制集读选项

应用程序通过指定 复制集读选项 来控制驱动对发送到复制集的读操作进行管理。

复制集读选项的生效流程

在复制集中,读操作可能有额外的语义或是表现。

ON THIS PAGE