rmdir.cn

EVALSHA

执行缓存的 Lua 脚本

语法

EVALSHA sha1 numkeys key [key ...] arg [arg ...]

说明

EVALSHA 通过 SHA1 摘要执行已由 SCRIPT LOAD 加载到缓存的 Lua 脚本。避免重复传输脚本内容,性能优于 EVAL。

参数

  • sha1必填

    脚本的 SHA1 摘要值

  • numkeys必填

    键参数的数量

  • key

    脚本中使用的键名

  • arg

    传递给脚本的附加参数

示例

先加载再执行

加载脚本后通过 SHA1 执行

SCRIPT LOAD "return redis.call('GET', KEYS[1])" EVALSHA <sha1> 1 mykey

结合重试机制

EVALSHA 失败时回退到 EVAL

EVALSHA <sha1> 1 rate:key 60