Redis Lua Scripts
Executing Lua scripts in Redis
EVAL
EVAL 'return redis.call("SET", KEYS[1], ARGV[1])' 1 mykey myvalue
# execute Lua script
Script Structure
'
local value = redis.call("GET", KEYS[1])
if value == false then
redis.call("SET", KEYS[1], ARGV[1])
return 1
end
return 0
'
SCRIPT LOAD
SCRIPT LOAD 'return redis.call("GET", KEYS[1])' # load script, returns SHA1
EVALSHA
EVALSHA sha1 1 mykey # execute loaded script by SHA1
Script Management
SCRIPT EXISTS sha1 # check if script exists
SCRIPT FLUSH # remove all scripts