0
Только начал играть с Lua Scripting в Redis, я хочу, чтобы выполнить следующие команды в скрипте:Lua скрипт с мульти операция не работает в Redis
set k1 foo
set k2 bar
Попробованном ..
> EVAL "redis.call('set', KEYS[1],'foo'); redis.call('set',KEYS[2],'bar'); return 1;" 1 k1 2 k2
> script load "redis.call('set', KEYS[1],'foo'); redis.call('set',KEYS[2],'bar'); return 1;"
> "bb031c00b6ab2508bbf182dadd5c9bf1675cce56"
> EVALSHA "bb031c00b6ab2508bbf182dadd5c9bf1675cce56" 1 k1 2 k2
Результаты
get k1
1) "foo"
get k2
(nil)
Почему k2
не установлен; является ли скрипт и/или синтаксис неправильным?
Число аргументов должно быть установлено явно? В этом случае 2? – raffian
необходимо отправить количество ключей (http://redis.io/commands/eval), а аргументы - все, что следует за клавишами. – akonsu
Работы, спасибо. – raffian