Memcached分布式Cache的简单测试

服务器端安装:


1. 下载win32 版本

 memcached-1.2.1-win32.zip

 

 下载memcache的windows稳定版,解压放在e:/memcached 
2. 在终端下输入 'e:/memcached/memcached.exe -d install' 安装
3. 在终端下输入   'e:/memcached/memcached.exe -d start' 启动

 

NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。


客户端测试:

首先下载java client端jar包,导入到eclipse

 

接着在项目中写Memcached 的应用类,下面是根据官方demo 修改的,仅供参考:

/**
 * 
 * @description 本类用于连接缓冲池Memcached
 */
package zl.Sort;

import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;

public class CacheHelper {
	
	/* 单例模式 */
	protected static MemCachedClient mcc = new MemCachedClient();
	
	private CacheHelper() {
	}
	
	/* 配置服务器组 */
	static {
		
		/* 定义IP地址和端口 */
		String[] servers = { "127.0.0.1:11212" };
		
		/* 设置缓存大小 */
		Integer[] weights = { 2 };
		
		/* 拿到一个连接池的实例 */
		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);// 禁用nagle算法
		pool.setSocketConnectTO(0);
		pool.setSocketTO(3000);// 3秒超时
		
		/* 初始化 */
		pool.initialize();
		
		/* 设置缓存压缩 */
		mcc.setCompressEnable(true);
		mcc.setCompressThreshold(64 * 1024);
		
	}
	
	public static boolean set(String arg0, Object arg1) {
		return mcc.set(arg0, arg1);
	}
	
	public static Object get(String arg0) {
		return mcc.get(arg0);
	}
	
	/* 测试 */
	public static void main(String[] args) {
		CacheHelper.set("gogo", "gogogogo");
		System.out.println(CacheHelper.get("gogo"));// gogogogo
		System.out.println(CacheHelper.get("gogog"));// null
		/* 如果出现都为null,检查地址和端口。端口可以到Memcached同目录配置文件看 */
	}
	
}
后期可能会加入数据库和缓存同步功能,初步构想是用数据库的触发器来完成,也就是在需要放在缓存的数据表操作的时候触发刷新缓存的操作,这不仅让项目代码的业务考虑缩小范围,另一方面代码侵入也小,容易修改。具体实现等更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值