【问题标题】:How to create document in Couch base with "no replication"?如何在“无复制”的情况下在 Couch base 中创建文档?
【发布时间】:2016-11-09 01:09:55
【问题描述】:
您好沙发基地专家,
我们有两个启用了复制的集群,我们想确定我们的 java 应用程序正在写入哪个集群。所以我们正在考虑为每个集群添加一个唯一的文档,然后我们可以查询文档以找出集群的名称。但问题是,随着复制的开启,两个文档都将在两个集群中可用,并且我们根据文档的存在来识别集群的逻辑将失败。有没有人遇到过类似的问题?我们可以关闭一组特定文档的复制吗?
【问题讨论】:
标签:
couchbase
spring-data-couchbase
couchbase-java-api
xdcr
【解决方案1】:
您可以在管理界面的设置中设置集群名称:
然后你可以通过 REST 调用来查询它
$ curl -s http://localhost:8091/pools/default?waitChange=1 | jq .clusterName
"foobar"
【解决方案2】:
您可以配置/过滤可以在集群之间复制的内容 (XDCR)。这可以使用正则表达式来实现,因此只要您具有模式/唯一性,您就可以使其复制或停止复制。
转到 XDCR 选项卡并创建复制,检查 Advanced Replication 选项 --> 过滤表达式(您也可以测试找到的匹配项)。
Reference Image