2
我正在将一组值存储到memcached客户端,并将密钥设置为setOfKeys。 我把价值在分布式缓存如下net.spy.memcached.OperationTimeoutException:超时等待值
Set<String> keys=new HashSet<String>();
mMemcachedClient = new MemcachedClient(new BinaryConnectionFactory(),
AddrUtil.getAddresses("172.22.65.111:11211 172.22.65.11:11211"));
public void put(Object key, Object value) throws Result {
try {
synchronized (mMemcachedClient) {
this.keys.add(key.toString());
if(keys.size()==1){
mMemcachedClient.set(String.valueOf(hg.hash("setOfKeys")),
7200, keys);
}
else{
mMemcachedClient.replace(String.valueOf(hg.hash("setOfKeys")),
7200, keys);
}
mMemcachedClient.set(String.valueOf(hg.hash(key.toString())),
7200, value);
}
} catch (Excep`enter code here`tion ex) {`enter code here`
mLogger.error(ex.getMessage());
throw new Result("ERROR_PUT_MEMCACHED_INTO_CACHE");
}
}
但是当我尝试从缓存中读取setOfKeys如下它给我的错误
net.spy.memcached.OperationTimeoutException: Timeout waiting for value
时,我有我的唯一的本地服务器的memcached客户端作为mMemcachedClient =新MemcachedClient(新BinaryConnectionFactory(), \t \t \t \t AddrUtil.getAddresses( “172.22.65.111:11211”));它的工作原理fine.But当我增加服务器,比如mMemcachedClient =新MemcachedClient(新BinaryConnectionFactory()。那一次, \t \t \t \t AddrUtil.getAddresses(“172.22.65.111:11211 172.22.65.11:11211"));.Its做工作。它给了我Exceptiion net.spy.memcached.OperationTimeoutException:等待值的超时。 –
尝试使用telnet连接到172.22.65.11,并发送一些命令,看看是否有效。如果没有,那么你或者有网络问题或者该机器上的memcached运行不正常。 – mikewied
Thanx很多...问题是与其他server.After重新安装该服务器没有eXception来了..再次感谢。 –