我有一个简单的代码,应该与memcached一起工作。不幸的是,它不能正常工作。
下面是一个简化的代码片段:
MemcachedClinet memcached = new MemcachedClient(new ConnectionFactoryBuilder()
.setDaemon(true)
.setFailureMode(FailureMode.Cancel)
.build(),
AddrUtil.getAddresses("192.168.178.27:11211"));
memcached.get(keyName);
下面是我在执行过程中得到的一个错误:
2014-08-28 01:47:46.577 INFO net.spy.memcached.MemcachedConnection: Added {QA sa=/192.168.178.27:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null, toWrite=0, interested=0} to connect queue
2014-08-28 01:47:46.579 WARN net.spy.memcached.MemcachedConnection: handling node for operation is not set
28-Aug-2014 01:47:46.579 SEVERE [http-nio-8080-exec-9] com.internetlogisticsinc.projects.xenu.core.Rotator.getCounter null
java.util.concurrent.CancellationException: Cancelled
at net.spy.memcached.internal.OperationFuture.get(OperationFuture.java:177)
at net.spy.memcached.internal.GetFuture.get(GetFuture.java:69)
at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:1230)
at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:1257)
(...)
我完全不知道handling node for operation is not set
是什么意思,什么会导致这个错误消息。Memcached服务器工作正常,我可以通过telnet连接到它,没有任何问题。telnet测试是在运行应用程序的同一台计算机上完成的。
用谷歌搜索handling node for operation is not set
并没有给我带来任何有用的结果。
代码在Apache Tomcat8.0.3中作为servlet执行,并捆绑到NetBeans 8.0中。Spymemcached版本为2.11.4。
你有什么想法吗?
谢谢您抽时间见我
发布于 2014-08-28 14:22:43
首先,检查您是否可以使用简单的Java类使用基本连接来连接服务器。首先设置一个值,然后尝试检索它。
MemcachedClient c=new MemcachedClient(new InetSocketAddress("hostname", portNum));
当您没有正确配置节点时,在多节点memcache配置中可能会抛出此异常。
https://stackoverflow.com/questions/25538755
复制相似问题