我们有4个节点的集群,需要:
UP:为什么我们需要读取本地: 6节点集群,其中1个节点向下,从python中选择数据:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/couchbase/connection.py", line 500, in get
return _Base.get(self, key, ttl, quiet, replica, no_format)
couchbase.exceptions._NetworkError_0x10 (generated, catch NetworkError): <Key=u'configuration!ivr.conf!ivr_000*308@siptest.ringme.ru', RC=0x10[Network failure], Operational Error, Results=1, C Source=(src/multiresult.c,282)>
Replicas: 2 copies
couchbase on this error MUST read another nodes on error!
答案 0 :(得分:3)
Couchbase确实提供了高效的分片和复制机制。所以你的#2&#34;没有分片&#34;将与Couchbase陌生(但可通过XCDR实现)
因此,如果你有4个带有CB服务器实例的物理节点,我建议采用以下设置(实现1毫秒以下的访问时间和HA 24/7设置):
如果您实施上述步骤,您将实现24/7不间断运行的容错设置,其中数据保存在所有4个节点上(类似RAID)
答案 1 :(得分:0)
user1697575的答案涵盖了您的大多数问题,但在第(3)点 - &#34;始终从本地节点读取&#34; - 你为什么要这样做?
您可以在具有&gt; 1节点的群集中真正执行此操作,因为数据会在所有节点上自动分发(分片),并且无法禁用共享。