memcahed 的 java sdk 如何批量获取memcahed的key?

智数追云人
• 阅读 548

Memcached Java客户端SDK提供了 BulkGetFuture 接口用于获取多个key对应的value,对应的方法是asyncGetBulk。

如果要获取多个key,可以将key以List的形式传入 asyncGetBulk 方法中,返回 BulkGetFuture 对象,再通过 BulkGetFuture.get() 方法获取到结果。

以下是一个简单的示例代码:

//创建连接池
MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddresses("localhost:11211"));
MemcachedClient client = builder.build();
//需要获取的key列表
List<String> keys = Arrays.asList("key1", "key2", "key3");
//异步获取多个key对应的value
BulkGetFuture<Map<String, Object>> future = client.asyncGetBulk(keys);
try {
    //获取结果
    Map<String, Object> resultMap = future.get();
    for (String key : keys) {
        //获取对应的value
        Object value = resultMap.get(key);
        System.out.println(key + " : " + value);
    }
} catch (Exception e) {
    e.printStackTrace();
} finally {
    client.shutdown();
}

上述代码中使用了XMemcached客户端,它是一个支持Memcached协议的Java客户端SDK,可以通过Maven依赖引入,例如:

<dependency>
    <groupId>com.googlecode.xmemcached</groupId>
    <artifactId>xmemcached</artifactId>
    <version>2.4.6</version>
</dependency>
点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
java中map接口hashMap以及Enty之间的用法和关系
java中map接口hashMap以及Enty之间的转换首先说的是map接口:Map提供了一种映射关系,其中的元素是以键值对(keyvalue)的形式存储的,能够实现根据key快速查找value;建(key值)不可重复,value值可以重复,一个value值可以和很多key值形成对应关系,每个建最多只能映射到一个值。Ma
Wesley13 Wesley13
3年前
Java中HashMap的实现原理
总结:HashMap的实现原理:1.利用key的hashCode重新hash计算出当前对象的元素在数组中的下标2.存储时,如果出现hash值相同的key,此时有两种情况。(1)如果key相同,则覆盖原始值;(2)如果key不同(出现冲突),则将当前的keyvalue放入链表中3.获取时,直接找到hash值对应
Stella981 Stella981
3年前
Redis 字符串(String)
SETkeyvalue设置指定key的值GETkey获取指定key的值。GETRANGEkeystartend返回key中字符串值的子字符GETSETkeyvalue将给定key的值设为value,并返回key的旧值(oldvalue)。
Stella981 Stella981
3年前
Android 虹软人脸识别SDK
准备:登录官方网站,获取SDK,进行个人验证后新建项目,获取APP\_ID,和SDK\_KEY;https://ai.arcsoft.com.cn/ucenter/resource/build/index.html/ucenter/resource/openPlatform/application(https://www.o
Wesley13 Wesley13
3年前
Java面试总结
1. HashMap与HashTable的区别Hashmap的key、value都可以为空,但key只能有一个为空,value可以有多个,非同步HashTable的key、value都不能为空,是同步的,线程安全因为hashtable,concurrenthashmap它们是用于多线
Stella981 Stella981
3年前
Key
KeyValue是用一个不可重复的key集合对应可重复的value集合。(典型的例子是字典:通过页码的key值找字的value值)。例子:key1—value1;key2—value2;key3—value3.SortedMap:如果一个Map可以根据key值排序,则称其为SortedMap。(如字典)!!注意数组和集合的区别:数组
Stella981 Stella981
3年前
HashMap Hashtable 的区别
Hashtable 和 HashMap作为 Map 的基本特性两者都实现了Map接口,基本特性相同\          对同一个Key,只会有一个对应的value值存在\          如何算是同一个Key?首先,两个key对象的hash值相同,其次,key对象的equals方法返回真内部数据结构Hashtab
Wesley13 Wesley13
3年前
Java中的Map集合
Map接口简介Map接口是一种双列集合,它的每个元素都包含一个键对象Key和值对象Value,键和值对象之间存在一种对应关系,称为映射。从Map集合中访问元素时,只要指定了Key,就能找到对应的Value,Map中的键必须是唯一的,不能重复,如果存储了相同的键,后存储的值会覆盖原有的值,简而言之就是键相同,值覆盖。Map常用
Wesley13 Wesley13
3年前
APP 验证码 采用MEMCAHED验证的坑
都知道APP不是用浏览器来的,所以验证码生成sessioncookie是行不通了。一开始APP进入验证码界面,先让他请求一次服务器,生成key:code返回去。再把拿到的KEY带到服务器上面去生成图片。同时生成一个key:code再把key返回到客户端,当客户端验证图片的时候再把key再到服务器上去获取key里的code进行对比。一旦对比成功放行,对比
Stella981 Stella981
3年前
Map查找表,队列和栈
存入keyvalue对Vput(Kk,Vv);获取key所对应的value值Vget(Kk);判断Map是否包含给定的key或value值:booleancontainsKey(Kk),booleancontainsValue(Vv);遍历所有的key:Set<KkeySet();遍历所有keyvalue对Set<Entrye
Stella981 Stella981
3年前
HTML5之SessionStorage本地存储
此对象主要有两个方法:保存数据:sessionStorage.setItem(Key,value);读取数据:sessionStorage.getItem(Key);Key:表示你要存入的键名称,此名称可以随便命名,可以按照变量的意思来理解。Value:表示值,也就是你要存入Key中的值,可以按照变量赋值来理
智数追云人
智数追云人
Lv1
帘旌微动,峭寒天气,龙池冰泮。
文章
3
粉丝
0
获赞
0