【问题标题】:MongoDB consistency with safe mode off关闭安全模式的 MongoDB 一致性
【发布时间】:2013-02-08 17:11:48
【问题描述】:

帮助我了解在这种情况下我对 MongoDB 的预期一致性水平。

我们正在运行一个副本集,其中 Mongoid 中的 consistency 标志设置为 strong,这意味着只读转到主服务器。但是safe 配置默认为false,所以写操作会立即返回。

假设没有任何错误,如果客户端应用程序插入一个新的大文档,然后快速尝试在另一个线程中读取它,我们是否可以保证将文档取回?或者我们是否需要打开safe 模式以确保这种级别的一致性?

【问题讨论】:

  • db end 和以前一样的一致性,都是关于应用程序的确认级别,即执行操作是否出错,关闭“安全模式”会导致火灾并忘记进行数据库调用的方法。至于阅读,你可能需要等待操作完成,嗯,不过

标签: mongodb mongoid consistency


【解决方案1】:

如果您先写入然后从主数据库读取,您将不会始终获得一致的结果。你是否在同一个连接上很重要。如果您在同一连接上,则不需要 safe。如果您在同一个连接上,则需要安全

【讨论】:

  • 即使它们在不同的连接上,并且系统因写争用而陷入困境?写命令可以被全局锁排队,然后读取首先通过吗?或者说屈服呢?文档说如果导致页面错误,写入将产生其锁定。
猜你喜欢
  • 2014-05-08
  • 2014-08-14
  • 2011-09-14
  • 2016-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多