有什么方法可以衡量Redis Lua脚本的性能吗?
我有一个lua脚本,最终得到了一个稍微不同的实现,我想知道是否有任何方法可以衡量这两个实现中哪个更快。
答案 0 :(得分:2)
您可以调用Redis的TIME
命令来执行脚本内“基准测试”。像下面这样的东西应该起作用:
local start = redis.call('TIME')
-- your logic here
local finish = redis.call('TIME')
return finish[1]-start[1]
答案 1 :(得分:0)
我在评论中读到有人提到完成 [2]-start[2] 这不是一个好主意,因为 [2] 有“当前秒内已经过去的微秒数”而不是整个时间戳(所以如果我们在不同的时间完成,这个计算就会失败。)
基于:https://redis.io/commands/TIME
要获得以微秒为单位的时间,我会这样做:
local start = redis.call('TIME')
-- your logic here
local finish = redis.call('TIME')
return (finish[1]-start[1])*1000000+(finish[2]-start[2])