use of net.spy.memcached.internal.OperationFuture in project oxAuth by GluuFederation.
the class CacheGrantManual method main.
public static void main(String[] args) throws IOException {
final MemcachedClient client = createClients();
final ExecutorService executorService = Executors.newFixedThreadPool(1000, daemonThreadFactory());
int count = 10000;
final long start = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
final int key = i;
executorService.execute(new Runnable() {
@Override
public void run() {
// MemcachedClient client = clients.get(random);
Object toPut = testGrant();
// Object toPut = UUID.randomUUID().toString();
OperationFuture<Boolean> set = null;
for (int j = 0; j < 3; j++) {
set = client.set(Integer.toString(key), 60, toPut);
}
// block
OperationStatus status = set.getStatus();
System.out.println(" key: " + key + ", time: " + (new Date().getTime() - start) + "ms, set: " + status);
executorService.execute(new Runnable() {
@Override
public void run() {
int random = random();
if (random % 3 == 0) {
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
Object get = client.get(Integer.toString(key));
System.out.println("GET key: " + key + " result: " + get);
}
});
}
});
}
sleep(40);
// System.out.println(client.get("myKey"));
//
// client.set("myKey", 30, testState());
//
// sleep(12);
// System.out.println(client.get("myKey"));
//
// sleep(12);
// System.out.println(client.get("myKey"));
client.shutdown();
}
Aggregations