scan是redis2.8以后引入的,它可以说是keys的一个升级版,我们知道keys命令可以用来查询key,可以使用通配符,但是没有分页功能,而且redis是单线程,所以key的查询比较消耗时间,特别是数据量大的时候,scan具备keys的功能,而且还可以分页,不会阻塞线程,还可以控制每次返回的结果数
package com.yl;
import redis.clients.jedis.Jedis;
public class ScanTest {
public static void main(String[] args) {
Jedis jedis = JedisUtils.getJedisObject();
for (int i = 0; i < 10000; i++) {
jedis.set("k"+i,"v"+i);
}
}
}
游标的作用: 作为开始遍历一维数组的位置,如果游标为0则代表着遍历key完毕!!!
scan 0 match k3* count 1000
3.scan是一系列的指令,除了遍历所有的key外,也可以遍历某一个类型的key
zsacn -> zset
sscan -> set
hscan -> hash
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_41359273/article/details/120754343
内容来源于网络,如有侵权,请联系作者删除!