couchbase3.0是否支持事务


  • 沙发床配置

主机:ip:127.0.0.1端口:17000

铲斗:Bucket1 Bucket2 Bucket3

我想将3个bucket{set(Bucket1),set(Bucket 2),set(Bucket3)}设置为一个事务。

我应该如何执行?

简短的回答是"否"。Couchbase不支持跨不同文档的交易。正如梅耶尔所提到的,您可以通过不同的数据建模来避免交易的需要。然而,如果您必须拥有它,您可以使用两阶段提交来获得部分事务功能(原子性和持久性,但不是隔离性或一致性。)

你可以在这里阅读2PC的一般内容:http://en.wikipedia.org/wiki/Two-phase_commit_protocol特别是与Couchbase相关的内容:http://docs.couchbase.com/couchbase-devguide-2.5/#performing-两阶段提交

从CouchbaseServer6.5(截至本文撰写之时为测试版)开始,有一种方法可以在单个事务中原子地修改多个文档。您可能希望将其建模为不同集合中的文档。

最新更新