Ja, LUA
script ist die beste Lösung im Fall von EVALSHA
Aufruf:
- Sie arbeiten asynchron mit Redis. Also
LUA
hilft Ihnen, die Anzahl der Codes und die Lesbarkeit des Codes zu reduzieren. LUA
Fall ist schneller, da die Netzwerkkommunikation reduziert wird.
Ich denke, Sie können Ihren Code mit nur 2 Befehlen schreiben. Sie brauchen exists
nicht in Ihrem 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"