🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
有时候如果我们执行的一个`Lua`脚本很长,那么直接调用`Lua`脚本会非常不方便,所以`Redis`当中提供了一个命令`script load`来手动给每个`Lua`脚本生成摘要,**这里之所以要说手动的原因是即使我们不使用这个命令,每次调用完`Lua`脚本的时候,`Redis`也会为每个`Lua`脚本生成一个摘要**。 其它相关命令: * `script exists 摘要`:判断一个摘要是否存在。`0`表示不存在,`1`表示存在。 * `script flush`:清除所有`Lua`脚本缓存。 接下来我们来验证一下,依次执行以下命令: ~~~sql script load "return redis.call('set',KEYS[1],ARGV[1])" //给当前 Lua脚本生成摘要,这时候会返回一个摘要 evalsha "c686f316aaf1eb01d5a4de1b0b63cd233010e63d" 1 address china //相当于执行命令 set address china get address //获取 adress,确认上面的脚本是否执行成功 script exists "c686f316aaf1eb01d5a4de1b0b63cd233010e63d" //判断当前摘要的 Lua脚本是否存在 script flush //清除所有 Lua脚本缓存 script exists "c686f316aaf1eb01d5a4de1b0b63cd233010e63d" //清除之后这里就不存在了 ~~~ 执行之后得到如下效果: ![](https://img.kancloud.cn/78/c2/78c2f73b9b37b1e4ddcc5a4e0cb1c5b7_709x254.png)