工作中需要实现多个应用服务共用一个会话数据源,所以涉及到了用 Memcached 来缓存会话数据。Memcached的概念可以看看百度百科
需要下载服务端程序安装到电脑上,这里提供了一个 Windows 版本的下载。
memcached.exe -d install
memcached.exe -d start
Memcached 的使用其实就是客户端-服务器模式,所以服务端安装好之后还需要有一个客户端来连接服务端,然后才能进行存取键值对等操作。
这里用简单的Java代码进行演示:
package com.leoxu.learn.memcache;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
public class MemcachedTest {
public static void main(String[] args) {
//设置连接池
String [] servers = {"127.0.0.1:11211"};
SockIOPool pool = SockIOPool.getInstance();
pool.setServers(servers);
pool.setFailover(true);
pool.setInitConn(10);
pool.setMinConn(5);
pool.setMaxConn(250);
pool.setMaintSleep(30);
pool.setNagle(false);
pool.setSocketTO(3000);
pool.setAliveCheck(true);
pool.initialize();
//创建 Memcached 客户端示例
MemCachedClient client = new MemCachedClient();
for (int i = 0; i < 1000; i++) {
//将对象加入到memcached缓存
boolean success = client.set("" + i, "HELLO!");
//从memcached缓存中按key值取对象
String result = (String) client.get("" + i);
System.out.println(String.format("set(%d):%s", i, success));
System.out.println(String.format("get(%d):%s", i, result));
}
}
}
我在网上还找到一个用php写的简单的 Memcached 管理页面,还不错。下载
可以使用 Windows 自带的 telnet 客户端程序(可能没有安装,需要先通过控制面板安装)连接,连接方式很简单,直接在命令行中输入 telnet 命令即可:
telnet 127.0.0.1 11211
链接成功后即可通过相关的 Memcached 命令来进行一些操作了。