setOfKeys としてキーを使用して、一連の値を memcached クライアントに保存しています。次のようにmemcachedに値を入れています
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