我需要用Redis Lua腳本調用Redis HMSET。這是一個咖啡腳本:用LUA觸發Redis HMSET
redis = require("redis")
client = redis.createClient();
lua_script = "\n
-- here is the problem\n
local res = redis.call('hmset', KEYS[1],ARGV[1])\n
print (res)\n
-- create secondary indexes\n
--\n
--\n
return 'Success'\n
"
client.on 'ready',() ->
console.log 'Redis is ready'
client.flushall()
client.send_command("script", ["flush"])
args = new Array(3)
args[0] = '1111-1114'
args[1] = 'id'
args[2] = '111'
callback = null
#client.send_command("hmset", args, callback) # this works
client.eval lua_script, 1, args, (err, res) ->
console.log 'Result: ' + res
什麼是在LUA腳本中調用HMSET的正確語法/模式? 順便說一句 - 我知道redis.HMSET命令。
我是新的在redis中使用lua,但是您可能需要使用'unpack'。我用它[我在這裏]發佈的代碼(http://codereview.stackexchange.com/questions/30195/redis-rate-limiting-in-lua),儘管我將它用於'HMGET'。 – JesseBuesking
順便說一下這是'Lua'而不是'LUA' –