private void printStats() { StringBuilder sb = new StringBuilder("*************************\n"); sb.append("Stats of peer ").append(peerDHT.peer().peerID()).append(": \n"); sb.append("PUT: count: ") .append(putStats.getCount()) .append(" | avgtime: ") .append(putStats.getAverageTime()) .append("ms | success: ") .append(putStats.getSuccessRate()) .append("\n"); sb.append("GET: count: ") .append(putStats.getCount()) .append(" | avgtime: ") .append(getStats.getAverageTime()) .append("ms | success: ") .append(getStats.getSuccessRate()) .append("\n"); sb.append("RMV: count: ") .append(putStats.getCount()) .append(" | avgtime: ") .append(rmvStats.getAverageTime()) .append("ms | success: ") .append(rmvStats.getSuccessRate()); System.out.println(sb.toString()); }
public boolean remove(Number640 key) { long startTime = System.currentTimeMillis(); FutureRemove remove = peerDHT .remove(key.locationKey()) .contentKey(key.contentKey()) .domainKey(key.domainKey()) .versionKey(key.versionKey()) .routingConfiguration(routingConfig) .requestP2PConfiguration(requestConfig) .start() .awaitUninterruptibly(); putStats.report(System.currentTimeMillis() - startTime, remove.isSuccess()); LOG.debug("Remove is success {}. Reason: {}", remove.isSuccess(), remove.failedReason()); return remove.isSuccess(); }
public Data get(Number640 key) { long startTime = System.currentTimeMillis(); FutureGet futureGet = peerDHT .get(key.locationKey()) .contentKey(key.contentKey()) .domainKey(key.domainKey()) .versionKey(key.versionKey()) .routingConfiguration(routingConfig) .requestP2PConfiguration(requestConfig) .start() .awaitUninterruptibly(); putStats.report(System.currentTimeMillis() - startTime, futureGet.isSuccess()); LOG.debug("Get is success {}. Reason: {}", futureGet.isSuccess(), futureGet.failedReason()); if (futureGet.data() != null) { return futureGet.data(); } else { return null; } }
public boolean put(Number640 key) { Data data = generateRandomData(); long startTime = System.currentTimeMillis(); FuturePut futurePut = peerDHT .put(key.locationKey()) .domainKey(key.domainKey()) .versionKey(key.versionKey()) .data(key.contentKey(), data) .routingConfiguration(routingConfig) .requestP2PConfiguration(requestConfig) .start() .awaitUninterruptibly(); putStats.report(System.currentTimeMillis() - startTime, futurePut.isSuccess()); LOG.debug( "Put of {} bytes is success = {}. Reason: {}", data.length(), futurePut.isSuccess(), futurePut.failedReason()); return futurePut.isSuccess(); }