memcached的安装以及SpyMemcached的使用

1、Memcached的安装

  • memcached依赖于libevent库,所以先安装libevenet库

tar -xzf libevent-1.4.14b-stable.tar.gz

cd libevent-1.4.14b-stable

./configure

make

sudo make install

  • memcached的下载地址,安装步骤和libevenet一样。
  • 安装完memcached以后,执行memcached -h打印帮助信息

2、Memcached的JAVA调用

  • 建议先到网上找一个介绍Memcached的文档看一下:memcached全面剖析.pdf
  • memcached客户端使用google的spymemcached,可以直接下载,如果使用maven的话,GAV坐标如下:

    <dependency>
        <groupId>com.google.code.simple-spring-memcached</groupId>
        <artifactId>spymemcached</artifactId>
        <version>2.8.4</version>
    </dependency>

  • spymemcached的基本使用很简单:new一个MemcachedClient实例,然后调用set/add/replace/get命令即可,注意用完后要关闭客户端:调用shutdown():
MemcachedClient mc = new MemcachedClient(new InetSocketAddress(CONSTANT.MEMCACHED_ADDR, CONSTANT.MEMCACHED_PORT));

mc.set(“key”, 0, "value");

mc.shutdown();


  • pymemcached的高级用法如下:

在创建MemcachedClient的时候指定Memcached地址列表,支持Memcached集群使用;

使用异步查询asyncGet,防止因为查询不到值导致的客户端挂死问题

      // Get a memcached client connected to several servers
      // over the binary protocol
      MemcachedClient c = new MemcachedClient(new BinaryConnectionFactory(),
              AddrUtil.getAddresses("server1:11211 server2:11211"));

      // Try to get a value, for up to 5 seconds, and cancel if it
      // doesn't return
      Object myObj = null;
      Future<Object> f = c.asyncGet("someKey");
      try {
          myObj = f.get(5, TimeUnit.SECONDS);
      // throws expecting InterruptedException, ExecutionException
      // or TimeoutException
      } catch (Exception e) {  /*  /
          // Since we don't need this, go ahead and cancel the operation.
          // This is not strictly necessary, but it'll save some work on
          // the server.  It is okay to cancel it if running.
          f.cancel(true);
          // Do other timeout related stuff
      }
  • 使用二进制协议如下,需要在创建MemcachedClient的时候,指定二进制链接工厂:BinaryConnectionFactory
// Get a memcached client connected to several servers with the binary protocol
MemcachedClient c=new MemcachedClient(
        new BinaryConnectionFactory(),
        AddrUtil.getAddresses("server1:11212 server2:11212"));

// Proceed to do cool stuff with memcached using the binary protocol.

key最大250个字节、key中不能有控制字符和空格、item最大1M字节、item的过期时间最大30天



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Java连接和使用Memcached(内存缓存数据库)在Windows操作系统上进行如下步骤: 1. 首先,确保你已经在Windows上安装了Java开发环境(JDK)和Memcached服务。你可以从官方网站上下载并安装它们。 2. 打开Memcached服务:在Windows命令提示符中,输入`memcached -d start`命令来启动服务。这将在默认端口(11211)上启动Memcached服务。 3. 在Java代码中添加对Memcached客户端库的依赖。你可以使用一些流行的Java库(如Spymemcached或Xmemcached)来连接和操作Memcached。 4. 在Java代码中创建Memcached客户端连接对象。这个对象将被用来执行与Memcached的交互操作,比如存储和获取数据。示例代码如下: ```java import net.spy.memcached.MemcachedClient; // 创建连接对象 MemcachedClient memcachedClient = new MemcachedClient(new InetSocketAddress("localhost", 11211)); ``` 5. 使用创建的Memcached客户端对象进行相关操作。例如,你可以使用`set`方法来存储数据,并使用`get`方法来获取已存储的数据。示例代码如下: ```java // 存储数据 memcachedClient.set("key", 3600, "value"); // 获取数据 Object value = memcachedClient.get("key"); System.out.println(value); ``` 6. 最后,在代码结束时关闭Memcached客户端连接。这可以通过调用`shutdown`方法来实现。示例代码如下: ```java // 关闭连接 memcachedClient.shutdown(); ``` 通过遵循以上步骤,你可以在Windows上使用Java连接和使用Memcached进行数据缓存操作。记得在开发过程中,要检查和处理异常情况,以确保代码的正确执行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值