Memcached

Memcached安装

Linux安装

sudo apt-get install libevent libevent-deve 自动下载安装(Ubuntu/Debian)
yum install libevent libevent-deve 自动下载安装(Redhat/Fedora/Centos)

源代码安装:

wget http://memcached.org/latest                    下载最新版本
tar -zxvf memcached-1.x.x.tar.gz                    解压源码
cd memcached-1.x.x                                  进入目录
./configure --prefix=/usr/local/memcached           配置
make && make test                                   编译
sudo make install                                   安装

后台服务:

# /usr/local/memcached/bin/memcached -p 11211 -m 64m -d
/usr/local/memcached/bin/memcached -d -m 64M -u root -l 192.168.0.200 -p 11211 -c 256 -P /tmp/memcached.pid

Windows下面

Window 下安装 Memcached
官网上并未提供 Memcached 的Window平台安装包,我们可以使用以下链接来下载,你需要根据自己的系统平台及需要的版本号点击对应的链接下载即可:
32位系统 1.2.5版本:http://static.runoob.com/download/memcached-1.2.5-win32-bin.zip
32位系统 1.2.6版本:http://static.runoob.com/download/memcached-1.2.6-win32-bin.zip
32位系统 1.4.4版本:http://static.runoob.com/download/memcached-win32-1.4.4-14.zip
64位系统 1.4.4版本:http://static.runoob.com/download/memcached-win64-1.4.4-14.zip
32位系统 1.4.5版本:http://static.runoob.com/download/memcached-1.4.5-x86.zip
64位系统 1.4.5版本:http://static.runoob.com/download/memcached-1.4.5-amd64.zip

简单命令操作

http://www.runoob.com/memcached/memcached-set-data.html

JAVA连接Memcached

/**
     *  void
     * @Description Memcached测试,需要用到spymemcached-2.10.3.jar包
     * Maven使用:
     * 
        <dependency>
            <groupId>net.spy</groupId>
            <artifactId>spymemcached</artifactId>
            <version>2.12.1</version>
        </dependency>
     */
    @Test
    public void test() {
         try{
             // 本地连接 Memcached 服务
             MemcachedClient mcc = new MemcachedClient(new InetSocketAddress("127.0.0.1", 11211));
             System.out.println("Connection to server sucessful.");

             //--------------------------get 操作---------------------
             // 存储数据
             Future<Boolean> fo = mcc.set("runoob", 900, "Free Education");
             // 查看存储状态
             System.out.println("set status:" + fo.get());
             // 输出值
             System.out.println("runoob value in cache - " + mcc.get("runoob"));

             //--------------------------add 操作------------------------
             // 添加
             fo = mcc.add("test", 900, "memcached");
             System.out.println("add status:" + fo.get());
             // 添加新key
             fo = mcc.add("test2", 900, "All Free Compilers");
             System.out.println("add status:" + fo.get());
             // 输出
             System.out.println("codingground value in cache - " + mcc.get("test2"));

             //-------------------------replace 操作--------------------------
             fo = mcc.replace("runoob", 900, "Largest Tutorials' Library");
             System.out.println("replace status:" + fo.get());
             System.out.println("runoob value in cache - " + mcc.get("runoob"));

             //-------------------------prepend 操作--------------------------
             fo = mcc.prepend("runoob", " Add TEST ");
             // 输出执行 set 方法后的状态
             System.out.println("prepend status:" + fo.get());
             // 获取键对应的值
             System.out.println("runoob value in cache - " + mcc.get("runoob"));

             //-------------------------CAS 操作--------------------------
             CASValue<Object> casValue = mcc.gets("runoob");
             System.out.println("CAS token - " + casValue);
             // 尝试使用cas方法来更新数据
             CASResponse casresp = mcc.cas("runoob", casValue.getCas(), 900, "Largest Tutorials-Library-Test By CAS");
             // 输出 CAS 响应信息
             System.out.println("CAS Response - " + casresp);
             // 输出值
             System.out.println("runoob value in cache - " + mcc.get("runoob"));

             //-------------------------delete 操作--------------------------
             // 对存在的key进行数据添加操作
             fo = mcc.delete("runoob");
             System.out.println("delete status:" + fo.get());
             System.out.println("runoob value in cache - " + mcc.get("runoob"));

             //-------------------------Incr/Decr 操作----------------------------
             fo = mcc.set("number", 900, "1000");
             System.out.println("value in cache - " + mcc.get("number"));
             System.out.println("value in cache after increment - " + mcc.incr("number", 111));
             System.out.println("value in cache after decrement - " + mcc.decr("number", 112));

             // 关闭连接
             mcc.shutdown();
          }catch(Exception ex){
             System.out.println( ex.getMessage() );
          }
    }

高级连接池使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值