Redis Lua脚本大循环

时间:2015-08-27 14:50:25

标签: lua redis

以下哪个循环将在Redis Lua脚本中以10,000次迭代更快地运行。或者它们都会以相同的速度运行。

访问lua脚本中的redis密钥需要花费与访问本地变量相同的时间,例如表的特定索引处的值。

local members = redis.pcall('smembers','10000memberset')

for i=1,table.getN(members) do

 local value = members[i]
  -- do some logic on the value

end

for i=1,10000 do

  local value = redis.pcall('get',i) 
  -- do some logic on the value

end

谢谢!

1 个答案:

答案 0 :(得分:2)

在使用1,000,000个项目集和1,000,000个redis键进行测试后,第二个循环的速度提高了6倍。 20.5s vs 3.1s。