有什么方法可以衡量Redis-Lua脚本的性能吗?
我有一个lua脚本,最终得到了一个略有不同的实现,我想知道是否有任何方法可以衡量这两个实现中哪一个更快。
您可以调用Redis的TIME
命令来执行脚本中的"基准测试"。以下内容应该有效:
local start = redis.call('TIME')
-- your logic here
local finish = redis.call('TIME')
return finish[1]-start[1]
我在评论中读到有人标注了finish[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])