Skip to content

Latest commit

 

History

History
30 lines (21 loc) · 876 Bytes

File metadata and controls

30 lines (21 loc) · 876 Bytes

MongoDB 事务

writeConcern 可以决定写操作到达多少个节点才算成功。

  • 默认:多节点复制集不做任何设定,所以是有可能丢失数据。
  • w: "majority":大部分节点确认,就视为写成功
  • w: "all":全部节点确认,才视为写成功

journal 则定义如何才算成功。取值包括:

  • true:写操作落到 journal 文件中才算成功;
  • false:写操作达到内存即算作成功。

【示例】在集群中使用 writeConcern 参数

db.transaction.insert({"count":1}, {"writeConcern":{w:"majoriy"}})
db.transaction.insert({"count":1}, {"writeConcern":{w:"4"}})
db.transaction.insert({"count":1}, {"writeConcern":{w:"all"}})

【示例】配置延迟节点,模拟网络延迟

conf=rs.conf()
conf.memebers[2].slaveDelay=5
conf.memebers[2].priority=0
rs.reconfig(conf)