面试题答案
一键面试在Redis Lua环境中,Lua脚本与Redis键值对数据交互主要通过以下命令:
- 获取(GET):使用
redis.call('GET', key)
命令。local key = "test_key" local value = redis.call('GET', key) return value
- 设置(SET):使用
redis.call('SET', key, value)
命令。local key = "test_key" local value = "test_value" redis.call('SET', key, value) return "Set successfully"
- 删除(DEL):使用
redis.call('DEL', key)
命令。local key = "test_key" local result = redis.call('DEL', key) return result
除了redis.call
,还可以使用redis.pcall
,redis.pcall
在执行Redis命令出错时会返回Lua的nil
和错误信息,而redis.call
会直接抛出错误。例如:
local key = "nonexistent_key"
local value, err = redis.pcall('GET', key)
if err then
return "Error: ".. err
else
return value
end