memcached的安装以及两种客户端

memcache的安装

memcached <1.4.5 版本安装

1、解压下载的安装包到指定目录。

2、在 1.4.5 版本以前 memcached 可以作为一个服务安装,使用管理员权限运行以下命令:

路径改成自己的解压缩路径

c:\memcached\memcached.exe -d install

注意:你需要使用真实的路径替代 c:\memcached\memcached.exe。

3、然后我们可以使用以下命令来启动和关闭 memcached 服务:

c:\memcached\memcached.exe -d start

c:\memcached\memcached.exe -d stop

4、如果要修改 memcached 的配置项, 可以在命令行中执行 regedit.exe 命令打开注册表并找到 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached" 来进行修改。

如果要提供 memcached 使用的缓存配置 可以修改 ImagePath 为:

"c:\memcached\memcached.exe" -d runservice -m 512

-m 512 意思是设置 memcached 最大的缓存配置为512M。

此外我们还可以通过使用 "c:\memcached\memcached.exe -h" 命令查看更多的参数配置。

5、如果我们需要卸载 memcached ,可以使用以下命令:

c:\memcached\memcached.exe -d uninstall

 

memcached >= 1.4.5 版本安装

1、解压下载的安装包到指定目录。

2、在 memcached1.4.5 版本之后,memcached 不能作为服务来运行,需要使用任务计划中来开启一个普通的进程,在 window 启动时设置 memcached自动执行。

我们使用管理员身份执行以下命令将 memcached 添加来任务计划表中:

schtasks /create /sc onstart /tn memcached /tr "'c:\memcached\memcached.exe' -m 512"

注意:你需要使用真实的路径替代 c:\memcached\memcached.exe。

注意:-m 512 意思是设置 memcached 最大的缓存配置为512M。

注意:我们可以通过使用 "c:\memcached\memcached.exe -h" 命令查看更多的参数配置。

3、如果需要删除 memcached 的任务计划可以执行以下命令:

schtasks /delete /tn memcached

 

客户端一:

需要的jar包

(commons-pool-1.5.6.jar

java_memcached-release_2.6.6.jar

slf4j-api-1.6.1.jar

slf4j-simple-1.6.1.jar)

范例

public class CacheHelper {
    private static MemCachedClient mcc = new MemCachedClient();

    private CacheHelper() {
    }

    static {
        String[] servers = { "地址:端口" };
        Integer[] weights = { 1 };
        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);
        pool.setNagle(false);// 禁用nagle算法
        pool.setSocketConnectTO(0);
        pool.setSocketTO(3000);// 3秒超时
        pool.setHashingAlg(3);// 设置为一致性hash算法
        pool.initialize();
    }

    public static MemCachedClient getMemCachedClient() {
        return mcc;
    }
}

测试

public class ClientTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        MemCachedClient mcc = CacheHelper.getMemCachedClient();
        mcc.add("data1", "12345");
        
        Object obj = mcc.get("data1");
        
        System.out.println(obj);
        
    }

}

客户端二:

public class MemcachedJava {
   public static void main(String[] args) {
   
      try{
         // 连接本地的 Memcached 服务
         MemcachedClient mcc = new MemcachedClient(new InetSocketAddress("地址", 端口号));
         System.out.println("Connection to server sucessful.");
      
         // 存储数据
         Future fo = mcc.set("set1", 900, "setvalue1");
      
         // 查看存储状态
         System.out.println("set status:" + fo.get());
         
         // 输出值
         System.out.println("value in cache - " + mcc.get("set1"));
 
         // 关闭连接
         mcc.shutdown();
         
      }catch(Exception ex){
         System.out.println( ex.getMessage() );
      }
   }
}

猜你喜欢

转载自www.cnblogs.com/xutiantian/p/10841073.html
今日推荐