Ja, LUA
script is de beste oplossing in het geval van EVALSHA
bel:
- Je werkt met redis asynchroon. Dus
LUA
helpt u het aantal code en de leesbaarheid van de code te verminderen. LUA
case is sneller omdat de netwerkcommunicatie wordt verminderd.
Ik denk dat je je code met slechts 2 commando's kunt schrijven. Je hebt exists
niet nodig in uw 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"