Memcached之完整實例
來源:程序員人生 發布時間:2015-03-13 08:11:14 閱讀次數:3274次
import java.sql.Date;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
public class MemCached {
//創建全局唯1的實例
protected static MemCachedClient mcc=new MemCachedClient();
protected static MemCached memCached=new MemCached();
//設置與緩存
服務器的連接池
static{
//
服務器列表和其權重
String[] servers={"127.0.0.1:11211"};
Integer[] weights={3};
//獲得socket連接池的實例對象
SockIOPool pool=SockIOPool.getInstance();
//設置
服務器信息
pool.setServers(servers);
pool.setWeights(weights);
//設置初始連接數、最小和最大連接數和最大處理時間
pool.setInitConn(5);
pool.setMinConn(5);
pool.setMaxConn(250);
pool.setMaxIdle(1000*60*60*6);
//設置主線程的睡眠時間
pool.setMaintSleep(30);
//設置TCP的參數、連接超時等
pool.setNagle(false);
pool.setSocketTO(3000);
pool.setSocketConnectTO(0);
//初始化連接池
pool.initialize();
// 緊縮設置,超過指定大小(單位為K)的數據都會被緊縮
mcc.setCompressEnable(true);
mcc.setCompressThreshold(64 * 1024);
}
/**
* 保護型構造,不允許實例化
*/
protected MemCached(){}
/**
* 獲得唯1實例
*/
public static MemCached getInstance(){
return memCached;
}
/**
* 添加1個指定的值dao緩存中
*/
public boolean add(String key,Object value){
return mcc.add(key,value);
}
public boolean add(String key,Object value,Date expiry){
return mcc.add(key,value,expiry);
}
public boolean replace(String key,Object value){
return mcc.replace(key,value);
}
public boolean replace(String key,Object value,Date expiry){
return mcc.replace(key, value,expiry);
}
/**
* 根據指定的關鍵字獲得對象
*/
public Object get(String key){
return mcc.get(key);
}
public static void main(String[] args) {
MemCached cached=MemCached.getInstance();
//cached.add("hello",1223);
System.out.println("get Value:"+cached.get("hello"));
}
}
需要的jar包:
java_memcached-release_1.6.jar
在運行之前要啟動Memcached服務,以下:

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈