Mongo rs.slaveOk()对主实例的缺点

时间:2015-08-05 11:30:01

标签: mongodb database nosql

我正在使用Robomongo工具连接到各种mongo实例。我遇到的一个拦截器是Robomongo不允许为特定连接设置readpreference。
但是,我看到我们可以指定Robomongo在启动时加载.mongorc.js文件。所以我在其中添加了行keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android ,现在我也可以连接到slave实例。

但这也意味着即使我连接到主实例,readpreference也将设置为secondary。我想知道是否有任何缺点,保持所有连接。我确信Robomongo开发人员不允许将其作为默认设置,因此有一些原因(尽管为每个连接设置连接首选项将是最佳解决方案)

1 个答案:

答案 0 :(得分:-1)

可能是因为这里提到的陈旧阅读问题 -

[http://docs.mongodb.org/manual/core/read-preference/#edge-cases-2-primaries]

它需要了解您的复制策略和数据的“陈旧性”。无论如何,上面的链接都很棒。

编辑:答案缺少上面链接的MongoDB文档的简要摘要(如用户200-ok所述)“指定读取首选项时要小心:主要模式之外的模式可能会返回陈旧数据,因为使用异步复制,辅助数据可能会不反映最近的写操作“