91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis怎么獲取所有key

發布時間:2023-04-10 16:56:34 來源:億速云 閱讀:123 作者:iii 欄目:開發技術

這篇文章主要介紹“redis怎么獲取所有key”,在日常操作中,相信很多人在redis怎么獲取所有key問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”redis怎么獲取所有key”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

keys:全量遍歷鍵,用來列出所有滿足特定正則字符串規則的key,假設redis此時正在生產環境下,使用該命令就會造成隱患,當redis數據量比較大時:

keys會一次性返回所有符合條件的key,所以會造成redis的卡頓。

SCAN是一個基于游標的迭代器,需要基于上一次的游標延續之前的迭代過程。SCAN以0作為游標,開始一次新的迭代,直到命令返回游標0完成一次遍歷。

此命令并不保證每次執行都返回某個給定數量的元素,甚至會返回0個元素,但只要游標不是0,程序都不會認為SCAN命令結束,但是返回的元素數量大概率符合count參數。另外,SCAN支持模糊查詢。

1.keys cmos-cache包

redisCacheService.keys(String pattern);

2.scan方法

public static Set<String> getAllKey(String match,int count){
    //返回集
    Set<String> binKeys = new HashSet<>();
    //封裝scan查詢參數
    ScanParams param = new ScanParams().match(match).count(count);
    //獲取查詢對象
    RedisCacheServiceImpl redisCacheSer = (RedisCacheServiceImpl)RedisCacheService;
    JedisCluster jedisClu = redisCacheSer.getJedisCluster();
//getClueterNodes獲取集群節點,從各個集群中獲取值進行遍歷
    jedisClu.getClusterNodes().values().stream().forEach(pool->{
        boolean done = false;//
        String cur = "0";//游標,以0開始,返回0代表一次結束
        try(Jedis jedisNode = pool.getResource()){
            while(!done){
                ScanResult<String> scanResult = jedisNode.scan(cur,param);
                cur = scanResult.getStringCursor();
                if("0".equals(cur){done=true};
                List<String> result = scanResult.getResult();
                result.foreach(data->{binKeys.add(data)});
            }
        }
    });
    return binKeys;
}

到此,關于“redis怎么獲取所有key”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宿松县| 罗平县| 宣化县| 清原| 台中市| 静乐县| 无锡市| 滨海县| 晋江市| 荣昌县| 蛟河市| 朝阳市| 古浪县| 来宾市| 高要市| 太仓市| 嵩明县| 宁晋县| 永定县| 保亭| 吉林省| 镇雄县| 西贡区| 黄山市| 堆龙德庆县| 和顺县| 卢湾区| 万州区| 房山区| 巴彦县| 宝山区| 嘉祥县| 宜昌市| 宁远县| 永泰县| 靖安县| 绍兴市| 望都县| 井研县| 海宁市| 敖汉旗|