【window】
将memcache服务器安装包解压到C:\memcached文件夹后,使用cmd命令窗口安装。
1>开始>运行:CMD(确定)
2>cd C:\memcached(回车)
3>memcached -d install(回车 这步执行安装)
4>memcached -d start(回车 这步执行启动memcache服务器,默认分配64M内存,使用11211端口)
此时memcache服务器已经可以正常使用了。
参考【http://my.oschina.net/flynewton/blog/9694】
Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent。(如果你的系统已经安装了libevent,可以不用安装)
官网:http://www.monkey.org/~provos/libevent/
2. 上传这两个包到/scmgt/memcache目录(自建目录)下。
3. 解压并安装:
4. 启动Memcached
完成上述操作后,memcached被安装/usr/local/bin/【/scmgt/memcache/lib/bin】目录下。启动Memcache的服务器的命令:
8. 代码测试:
import java.util.Date; import com.danga.MemCached.MemCachedClient; import com.danga.MemCached.SockIOPool; public class CacheManager { private static MemCachedClient mcc = null; static { //String[] servers ={"127.0.0.1:11211"}; String[] servers ={"10.25.193.16:11211"}; //负载权重 Integer[] weights = {100}; //创建一个实例对象SockIOPool,设置mcc参数 SockIOPool pool = SockIOPool.getInstance(); pool.setServers( servers ); pool.setWeights( weights ); //设置初始连接数、最小和最大连接数以及最大处理时间 pool.setInitConn( 100 ); pool.setMinConn( 100 ); pool.setMaxConn( 500 ); pool.setMaxIdle( 1000 * 60 * 60 * 6 ); //6小时 //设置主线程的睡眠时间 pool.setMaintSleep( 30 ); pool.setNagle( false ); pool.setSocketTO( 3000 ); pool.setSocketConnectTO( 0 ); pool.initialize(); //!!!注意:如果是我们自己的对象存放,最好重写序列化方法,不用使用默认。 mcc = new MemCachedClient(); //压缩设置,超过指定大小(单位为K)的数据都会被压缩 // mcc.setCompressEnable(true); // mcc.setCompressThreshold(64*1024); //使用代码 // String key="id00001"; // boolean r = mcc.set(key,"succe2ss", new Date(10 * 60 * 1000));//10分钟 // System.out.println("SET "+ r); // // System.out.println(mcc.get(key)); // System.out.println(mcc.get(key)); } public CacheManager(){ } public static MemCachedClient getMemCachedClient(){ return mcc; } public boolean set(String key,Object obj){ return mcc.set(key, obj); } public boolean set(String key,Object obj,Date date){ return mcc.set(key, obj,date); } public Object get(String key){ return mcc.get(key); } public boolean add(String key,Object obj){ return mcc.add(key, obj); } public static void main(String[] args) { if(args!=null && args.length==1 && args[0].equals("0")) CacheManager.getMemCachedClient().set("11", "22"); System.out.println(CacheManager.getMemCachedClient().get("11")); } }
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222334.html原文链接:https://javaforall.net
