Spring Data Couchbase - 连接到多个节点

时间:2015-03-22 14:40:17

标签: couchbase spring-data-couchbase

Java Couchbase客户端允许连接到群集中的多个节点(如果其中一个节点不可用)

可以在Spring Data Couchbase中使用吗?

我在Spring使用Couchbase 2.1和XML配置

2 个答案:

答案 0 :(得分:2)

是的,您可以通过这种方式配置spring-data。使用CouchbaseFactoryBean配置CouchbaseClient时,它接受以逗号分隔的主机列表。以下是配置CouchbaseClient bean的示例:

<couchbase:couchbase  bucket="myBucket" password="" host="host1,host2,host3"/>

这假设您正在使用1.4.x couchbase-client.jar依赖项,只要您使用spring-data 1.1.5,就可以了。你没有指定你的弹簧数据依赖关系,但你很可能在这里做得很好。

答案 1 :(得分:1)

在spring data couchbase中执行此操作的唯一方法&gt; 2.x是:

具有三个服务器和三个存储桶的群集,每个存储桶都有一个用户和密码。

<couchbase:cluster id="cluster_info" env-ref="couchbaseEnv2" >
    <couchbase:node>server1</couchbase:node>
    <couchbase:node>server2</couchbase:node>
    <couchbase:node>server3</couchbase:node>
</couchbase:cluster>

<couchbase:env id="couchbaseEnv2" connectTimeout="20000" computationPoolSize="10" />

<couchbase:clusterInfo cluster-ref="cluster_info" id="cluster1" login="user1" password="zzzzz1"/>
<couchbase:clusterInfo cluster-ref="cluster_info" id="cluster2" login="user2" password="zzzzz2"/>
<couchbase:clusterInfo cluster-ref="cluster_info" id="cluster3" login="user3" password="zzzzz3"/>

<couchbase:bucket id="bucket1" bucketName="user1" cluster-ref="cluster_info" bucketPassword="zzzzz1"/>
<couchbase:bucket id="bucket2" bucketName="user2" cluster-ref="cluster_info" bucketPassword="zzzzz2"/>
<couchbase:bucket id="bucket3" bucketName="user3" cluster-ref="cluster_info" bucketPassword="zzzzz3"/>

<couchbase:template id="couchBaseTemplate1" bucket-ref="bucket1" clusterInfo-ref="cluster1" />
<couchbase:template id="couchBaseTemplate2" bucket-ref="bucket2" clusterInfo-ref="cluster2"  />
<couchbase:template id="couchBaseTemplate3" bucket-ref="bucket3" clusterInfo-ref="cluster3"  />