1

连接到由多个节点组成的 couchbase 集群时,我遇到了一种奇怪的行为。由于冗余,我按照文档中的描述设置了与多个 IP 的连接。为了追查问题,我尝试像这样连接到单个节点:

$cb = new Couchbase("<valid ip>", "<username>", "<password>", "<bucket>");

这完全没问题。但是当用一个ip数组替换单个ip时——为了实现冗余。我在错误日志中得到以下输出:

PHP 警告:无法建立与服务器的 libcouchbase 连接:...中的连接失败 PHP 警告:...中没有与 couchbase 的活动连接

连接代码如下:

$hosts = array(<invalid ip>, <valid ip>);
$cb = new Couchbase($hosts, "<username>", "<password>", "<bucket>");

在这种情况下,我收到上述警告,并且 libcouchbase 根本没有连接。根据文档,couchbase 应该尝试所有提供的节点,并且不应该在第一个“死节点”上死掉。

我有什么不对吗?您对解决方法有什么想法吗?

非常感谢!克里斯

4

1 回答 1

3

也许这是特定于版本的,但是当我连接时,我不使用 IP 数组。我使用分号分隔的列表。例如

$cb = new Couchbase("192.168.2.1;192.168.2.2", $user, $password, $bucket);
于 2013-08-28T18:44:31.240 回答