摘要:不同的是會關(guān)聯(lián)一個類型的分數(shù),用于進行排序。成員是唯一的,但是可以重復(fù),如果重復(fù),會使用字典排序。最大的成員數(shù)為個元素多億。應(yīng)用場景按照分數(shù)進行排列將用戶與分數(shù)游戲分數(shù)考試成績點贊數(shù)進行關(guān)聯(lián),然后進行排序。
Sorted Set(有序集合)
Sorted Set 和 Set 一樣,也是 String 類型的集合,且成員唯一。不同的是 Sorted Set
會關(guān)聯(lián)一個 double 類型的 score(分數(shù)),用于進行排序。
成員是唯一的,但是score可以重復(fù),如果score重復(fù),會使用字典排序。
最大的成員數(shù)為 232 - 1 個元素(40多億)。
將用戶與分數(shù)(游戲分數(shù)、考試成績、點贊數(shù))進行關(guān)聯(lián),然后進行排序。
任務(wù)隊列將任務(wù)分為不同的等級,例如重要為2,不重要為1,根據(jù)優(yōu)先級安排任務(wù)。
實例zAdd($redisKey, 78, "tom", 78, "jerry");// 添加成員 echo $redis->zCard($redisKey) . "
";// 獲取成員數(shù) 2 $redis->zIncrBy($redisKey, 2, "jerry");// 對指定值進行增量 print_r($redis->zRange($redisKey, 0, -1));// 獲取指定索引區(qū)間的值,從小到大,示例為獲取所有值 Array ( [0] => tom [1] => jerry ) echo "
"; print_r($redis->zRevRange($redisKey, 0, -1));// 獲取指定索引區(qū)間的值,從大到小,示例為獲取所有值 Array ( [0] => jerry [1] => tom ) echo "
"; echo $redis->zScore($redisKey, "jerry") . "
";// 獲取指定值的分數(shù) 80 echo $redis->zCount($redisKey, 70, 79) . "
";// 獲取指定分數(shù)指定區(qū)間的數(shù)量 1 print_r($redis->zRangeByScore($redisKey, 70, 80));// 獲取指定分數(shù)間的數(shù)據(jù),從小到大 Array ( [0] => tom [1] => jerry ) echo "
"; print_r($redis->zRevRangeByScore($redisKey, 80, 70));// 獲取指定分數(shù)間的數(shù)據(jù),從大到小 Array ( [0] => jerry [1] => tom ) echo "
"; echo $redis->zRank($redisKey, "jerry") . "
";// 獲取指定值的索引,從小到大 1 echo $redis->zRevRank($redisKey, "jerry") . "
";// 獲取指定值的索引,從大到小 0 $redis->zAdd($redisKey, 56, "emma"); $redis->zRem($redisKey, "tom");// 移除指定值 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => emma [1] => jerry ) echo "
"; $redis->zRemRangeByRank($redisKey, 1, 2);// 移除指定排名區(qū)間的成員 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => emma ) echo "
"; $redis->zAdd($redisKey, 38, "tom", 98, "jerry"); $redis->zRemRangeByScore($redisKey, 30, 60);// 移除指定分數(shù)區(qū)間的成員 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => jerry ) echo "
";
參考資料:菜鳥教程。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/29966.html
摘要:延長過期時間就是重新注冊一次。關(guān)閉過期執(zhí)行器關(guān)閉通知器銷毀連接池關(guān)閉任務(wù)調(diào)度器這是銷毀的方法,邏輯很清晰,方法在源碼解析四注冊中心中已經(jīng)講到。 注冊中心——redis 目標(biāo):解釋以為redis實現(xiàn)的注冊中心原理,解讀duubo-registry-redis的源碼 Redis是一個key-value存儲系統(tǒng),交換數(shù)據(jù)非常快,redis以內(nèi)存作為數(shù)據(jù)存儲的介質(zhì),所以讀寫數(shù)據(jù)的效率極高,遠遠...
摘要:關(guān)于數(shù)據(jù)的存儲與獲取太多時候我們依賴數(shù)據(jù)庫,可是當(dāng)大量數(shù)據(jù)請求出現(xiàn)的時候,數(shù)據(jù)庫還是有點力不從心。這里我們需要在里面添加的依賴。寫一個單元測試來檢查一下。查看控制臺打印的內(nèi)容。 關(guān)于數(shù)據(jù)的存儲與獲取太多時候我們依賴數(shù)據(jù)庫,可是當(dāng)大量數(shù)據(jù)請求出現(xiàn)的時候,數(shù)據(jù)庫還是有點力不從心。這篇文章我就帶大家了解一下輔助工具Redis。 首先我們先創(chuàng)建一個springboot的項目,這里我就不再和...
閱讀 2533·2021-10-09 09:44
閱讀 640·2019-08-30 15:44
閱讀 2994·2019-08-29 18:46
閱讀 1133·2019-08-29 18:38
閱讀 557·2019-08-26 10:44
閱讀 2431·2019-08-23 16:07
閱讀 1089·2019-08-23 15:38
閱讀 4085·2019-08-23 14:02