memcache 例子

目的是測試memcached各方法調用所用的時間。

public class MemcacheGetTest extends AbstractTestServlet{



@Override
public void init() throws ServletException {
String[] servers = { "192.168.1.5:11211" };
    Integer[] weights = {3, 2};


    // 創建一個Socked連接池實例
    SockIOPool pool = SockIOPool.getInstance();
  // 向連接池設置服務器和權重
    pool.setServers(servers);
    pool.setWeights(weights);


    pool.setNagle(false);
    pool.setSocketTO(3000);
    pool.setSocketConnectTO(0);
    pool.initialize();
}


 
@Override
public void _service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
MemCachedClient memCachedClient = new MemCachedClient();
memCachedClient.set("foo", "This is a test String");
  // String bar = memCachedClient.get("foo").toString();
memCachedClient.replace("foo", "replace");
long i=memCachedClient.incr("foo", 1);
long j=memCachedClient.decr("foo", 1);
String bar = memCachedClient.get("foo").toString();
String bar1=memCachedClient.gets("foo").toString();
memCachedClient.flushAll();
System.out.println(bar);
System.out.println(bar1);
System.out.println(i);
System.out.println(j);
memCachedClient.delete("foo");
System.out.println(bar);
System.out.println(i);
}
}



public abstract class AbstractTest extends HttpServlet {


private static final long serialVersionUID = -8837205738090956963L;


Logger logger = LoggerFactory.getLogger(this.getClass());


private long startTime;


private long duration;


protected void testa() {
Thread.currentThread().setName("nbs." + Thread.currentThread().getId());
before();

after();
}




private void before() {
startTime = System.nanoTime();
logger.debug("   start :{}", startTime);
}


public abstract void test();

  
private void after() {
long end = System.nanoTime();
duration = end - startTime;
DecimalFormat df = new DecimalFormat("0.0000");
logger.debug("duration :{} ms.", df.format(duration / 1000000.0));
}


}

發佈了31 篇原創文章 · 獲贊 2 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章