redis使用lua脚本批量删除key
示例准备一些测试数据 如下:127.0.0.1:6379> keys *1) "test_03"2) "test_02"3) "test_04"4) "test_01"执行脚本/结果fangkeke@KK-MBP.local:~/Work/script $ redis-cli --eval /Users/fangkeke/Work/script/clear_cache.lua "test*"
·
示例
- 准备一些测试数据 如下:
127.0.0.1:6379> keys *
1) "test_03"
2) "test_02"
3) "test_04"
4) "test_01"
- 执行脚本/结果
fangkeke@KK-MBP.local:~/Work/script $ redis-cli --eval /Users/fangkeke/Work/script/clear_cache.lua "test*"
1) 1) "test_03"
2) (integer) 1
2) 1) "test_02"
2) (integer) 1
3) 1) "test_04"
2) (integer) 1
4) 1) "test_01"
2) (integer) 1
- 结果校验
fangkeke@KK-MBP.local:~/Work/script $ redis-cli 127
127.0.0.1:6379> keys *
(empty list or set)
脚本内容
local keys = redis.call('keys',KEYS[1])
local temp = {}
for iter, value in ipairs(keys) do
table.insert(temp, { value, redis.call('del', value) })
end
return temp
欢迎关注
公众号: 熟了
更多推荐
已为社区贡献2条内容
所有评论(0)