我想一次从 redis 列表中弹出所有列表项。
我不想在列表为空时调用lpop或rpop方法,因为多次发送请求到redis-server.
我还知道我可以使用lrange方法获取所有列表,但不能弹出项目。
你能建议我吗?
我只想通过一个请求来将列表中的项目pop添加到。getredis-server
Redis 没有POPALL命令,但是通过嵌入的 Lua 脚本,您可以轻松地执行此操作,例如:
local reply = redis.call('LRANGE', KEYS[1], 0, -1)
redis.call('DEL', KEYS[1])
return reply
Run Code Online (Sandbox Code Playgroud)
正如 Itamar Haber 所说,使用 lrange 和 del。在管道模式下,它将作为单个命令完成。
LRANGE key 0 -1
DEL key
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8895 次 |
| 最近记录: |