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來了..再次感謝。 –