nekipelov/redisclientを使用して Redis にアクセスしています。パフォーマンスを向上させるために、Redis への 1 回の呼び出しで複数のハッシュ データを取得する必要があります。
より具体的には、以下のように複数のハッシュを取得しようとしています:
redis-cli --ldb --eval /tmp/script.lua hash_key1 hash_key2
script.lua:
local r = {}
for _, v in pairs(KEYS) do
r[#r+1] = redis.call('HGETALL', v)
end
return r
しかし、nekipelov/redisclient から EVAL コマンドを使用して上記を表現するのは困難です。
私は以下のことを試しました:
redisclient.command("EVAL", {"/tmp/script.lua", hash_key1, hash_key2}
しかし、明らかに間違っています。