17、Redis Script( 脚本 ) 命令

本文详细介绍了Redis如何使用Lua解释器执行脚本,重点解析EVAL命令的语法与使用范例,并全面讲解SCRIPT LOAD、EVALSHA等所有Redis脚本相关命令,帮助开发者掌握在Redis中高效、安全地运行Lua脚本的技巧。

Redis 脚本使用 Lua 解释器来执行脚本

Reids 2.6 版本通过内嵌支持 Lua 环境

Redis 执行脚本的常用命令为 EVAL

EVAL 命令语法格式

Redis Eval 命令的基本语法如下:

1270.0.1:6379> EVAL script numkeys key [key ...] arg [arg ...]

范例

下面的范例演示了 Redis 脚本工作过程

1270.0.1:6379> EVAL "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 first second
1) "key1"
2) "key2"
3) "first"
4) "second"

Redis 脚本命令

下表列出了 Redis 脚本相关的命令

命令描述
EVAL执行 Lua 脚本
EVALSHA执行 Lua 脚本
SCRIPT EXISTS查看指定的脚本是否已经被保存在缓存当中
SCRIPT FLUSH从脚本缓存中移除所有脚本
SCRIPT KILL杀死当前正在运行的 Lua 脚本
SCRIPT LOAD将脚本 script 添加到脚本缓存中,但并不立即执行这个脚本