Oui, LUA le script est une meilleure solution en cas de EVALSHA appeler :
- Vous travaillez avec redis asynchrone. Donc
LUAvous aide à réduire le nombre de code et la lisibilité du code. LUAle cas est plus rapide en raison de la réduction de la communication réseau.
Je pense que vous pouvez écrire votre code avec seulement 2 commandes. Vous n'avez pas besoin de exists dans votre code.
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"