MongoDB中writeConcern的原理是什么

75次阅读
没有评论

共计 762 个字符,预计需要花费 2 分钟才能阅读完成。

自动写代码机器人,免费开通

MongoDB 中 writeConcern 的原理是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

MongoDB writeConcern 原理解析

MongoDB 支持客户端灵活配置写入策略(writeConcern),以满足不同场景的需求。
db.collection.insert({x: 1}, {writeConcern: {w: 1}})

writeConcern 选项

MongoDB 支持的 WriteConncern 选项如下

  w: 数据写入到 number 个节点才向用客户端确认
  {w: 0} 对客户端的写入不需要发送任何确认,适用于性能要求高,但不关注正确性的场景
  {w: 1} 默认的 writeConcern,数据写入到 Primary 就向客户端发送确认
  {w:“majority”} 数据写入到副本集大多数成员后向客户端发送确认,适用于对数据安全性要求比较高的场景,该选项会降低写入性能
  j: 写入操作的 journal 持久化后才向客户端确认
  默认为”{j: false},如果要求 Primary 写入持久化了才向客户端确认,则指定该选项为 true
  wtimeout: 写入超时时间,仅 w 的值大于 1 时有效。
  当指定{w:
  } 时,数据需要成功写入 number 个节点才算成功,如果写入过程中有节点故障,可能导致这个条件一直不能满足,从而一直不能向客户端发送确认结果,针对这种情况,客户端可设置 wtimeout 选项来指定超时时间,当写入过程持续超过该时间仍未结束,则认为写入失败。

看完上述内容,你们掌握 MongoDB 中 writeConcern 的原理是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计762字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)