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