假設我想將10個最近添加的內容存儲到redis排序集中,其中第11個添加將第1個添加到列表中。直到它達到10件物品才能正常生長。有沒有辦法在redis排序集上設置成員限制?
我必須檢查每次添加的長度並刪除第一個元素嗎?
假設我想將10個最近添加的內容存儲到redis排序集中,其中第11個添加將第1個添加到列表中。直到它達到10件物品才能正常生長。有沒有辦法在redis排序集上設置成員限制?
我必須檢查每次添加的長度並刪除第一個元素嗎?
我不認爲你需要檢查的長度,但必須自己更糟的是:
ZREMRANGEBYRANK [KEY] 0 -10
如果你只需要刪除第一個成員進入ZSet 你可以使用這個命令:
ZREMRANGEBYRANK key 0 0
你也可以排序第11要素爲使用ZADD與評分1 ZSet第一個成員:
ZADD key 1 member
EX:
redis的127.0.0.1:6379> ZADD myzset 1一個
(整數)1個
redis的127.0.0.1:6379> ZADD myzset 1兩
(整數)1個
redis的127.0.0.1:6379> ZRANGE myzset 0 -1 withscores
1) 「一」
2) 「1」
3) 「二」
4)爲 「1」
redis的1 27.0.0.1:6379> ZREMRANGEBYRANK myzset 0 0
(整數)1個
redis的127.0.0.1:6379> ZADD myzset 1 3
(整數)1個
redis的127.0.0.1:6379> ZRANGE myzset 0 -1 withscores
1) 「三」
2) 「1」
3) 「兩節」
4) 「1」
要保持10個最高得分值在zset作爲OP問,你」 d需要使用'0 -11',因爲Redis範圍是包含性的。 – Erhhung