[英]Implementation of Redis ZPOP
我正在尋找用於以原子方式彈出 ZSET 元素的 Redis ZPOP 實現,最常見的答案是:
WATCH zset
element = ZRANGE zset 0 0
MULTI
ZREM zset element
EXEC
我想知道下面的實現是否可以做同樣的工作,哪個看起來更簡單? 或者它有錯誤或性能問題?
MULTI
element = ZRANGE zset 0 0
ZREM zset element
EXEC
MULTI 塊內對 ZRANGE 的調用只會在 EXEC 之后返回,因此第二個版本將無法按預期工作。
供您參考,從 Redis v5 開始,已添加命令 ZPOPMIN 和 ZPOPMAX。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.