【发布时间】:2018-01-15 00:35:22
【问题描述】:
我对 redis 4 使用简单的 lua 脚本:
local result = {}
local vcounters = redis.call( "zrange", "vcounters::"..date, 0, -1, "withscores" )
local i = 1
while i < #vcounters do
local vid = vcounters[i]
if result[vid] == nil then result[vid] = 0 end
result[vid] = result[vid] +
(redis.call("scard", "vcounters::"..date.."::session::"..vid) or 0)
i = i + 2
end
return cjson.encode(result)
它是来自客户端脚本的替代 zrange/scard 命令,运行速度快 4-5 倍。但是这个脚本会阻止 zadd 命令吗?
【问题讨论】:
标签: redis