memcached client for java

Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon)是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。

一.安装:

1.将下载的Memcached1.2.6.zip解压缩到服务器某个目录下eg:D:\programfiles\memcached

2.输入cmd命令进入D:\programfiles\memcached

3.执行安装、启动命令

memcached.exe-dinstall

memcached.exe-dstart

如果你要卸载,执行下面的命令:

memcached.exe-dstop

memcached.exe-duninstall

二.结构

项目引入com.danga.memcached.jar包

memcached是以KEY-VALUE的方式进行数据存储的,KEY的大小限制:Key(max)<=250个字符;VALUE在存储时有限制:Value(max)<=1M;

memcached默认过期时间:ExpiresTime(max)=30(days)。

三.示例

publicclassMemcachedTestimplementsSerializable{

staticMemCachedClientmcc=newMemCachedClient();

static{

/**

*初始化SockIOPool,管理memcached的连接池

**/

String[]servers={"127.0.0.1:11211"};

SockIOPoolpool=SockIOPool.getInstance();//获取socke连接池的实例对象

pool.setServers(servers);

pool.setFailover(true);

//设置初始连接数、最小和最大连接数以及最大处理时间

pool.setInitConn(10);

pool.setMinConn(5);

pool.setMaxConn(250);

pool.setMaxIdle(1000*60*60*24);

//设置主线程的睡眠时间

pool.setMaintSleep(30);

//设置TCP的参数,连接超时等

pool.setNagle(false);

pool.setSocketTO(3000);

pool.setAliveCheck(true);

//初始化连接池

pool.initialize();

}

publicstaticvoidmain(String[]args){

for(inti=0;i<5;i++){

//SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");

//longtimeStart=(newDate().getTime()+1000*60);//一分钟后

//Datedate=newDate(timeStart);

//System.out.println(sdf.format(date));

//booleansuccess=mcc.set("key"+i,i,date);

Objectobject=mcc.get("key"+i);

if(null!=object){

Stringresult=object.toString();

System.out.println(String.format("get(%d):%s",i,result));

}else{

System.out.println("mcc一分钟缓存已过期");

break;

}

}

}

}

相关推荐