7

我正在使用 couchbase 人员v2.8.0提供的 spymemcached 客户端库。安装的 memcached 服务器是 version 1.4.13

memcached 的配置非常基本 > -m 64 -p 11211 -u memcache -l 127.0.0.1

我能够使用客户端库正确获取、设置、删除请求。但是通过我的日志,我注意到来自 spymemcached 库的警告消息,如下所示 -

WARN net.spy.memcached.MemcachedConnection:  Could not redistribute to another node, retrying primary node for ...

如果不存在一个节点,我不确定为什么要尝试重定向到集群中的另一个节点。

我正在使用以下代码连接到缓存客户端 -

String address = 127.0.0.1:11211;
new MemcachedClient(new ConnectionFactoryBuilder().setDaemon(true).build(), AddrUtil.getAddresses(address));

任何帮助表示赞赏。

4

1 回答 1

5

默认情况下,如果主节点不可用,Spymemcached 会将操作重新分配到不同的节点。如果您有另一个节点,则会发生这种情况,但由于只有一个,因此重新分配与在主节点上重试操作相同。在您的情况下,此消息有点令人困惑。如果您不想重新分配操作,那么您可以执行以下操作。

String address = 127.0.0.1:11211;
new MemcachedClient(new ConnectionFactoryBuilder().setDaemon(true).setFailureMode(FailureMode.RETRY).build(), AddrUtil.getAddresses(address));

如果听起来您的客户端可能已失去与服务器的连接并在某个时候重新连接。

于 2012-05-17T07:24:56.163 回答