はい、LUA
EVALSHA
の場合、スクリプトが最適なソリューションです。 電話:
- あなたはredis非同期で作業しています。つまり、
LUA
コードの数とコードの可読性を減らすのに役立ちます。 -
LUA
ネットワーク通信が減少するため、ケースの方が高速です。
たった2つのコマンドでコードを書けると思います。 exists
は必要ありません コード内。
local path = KEYS[1]
local resourcesPrefix = ARGV[1]
local collectionsPrefix = ARGV[2]
local ret
set ret = redis.call('get',resourcesPrefix..path)
if ret then
return ret
end
set ret = redis.call('smembers',collectionsPrefix..path)
if ret then
return ret
end
return "notFound"