sql >> Database >  >> NoSQL >> Redis

redis lua-script versus enkele oproepen

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" 


  1. Hoe maak je een Mongo Docker-afbeelding met standaardverzamelingen en -gegevens?

  2. Memcached of Redis gebruiken op aws-elasticache

  3. VersionError:Geen overeenkomend document gevonden fout op Node.js/Mongoose

  4. MongoServer.State-equivalent in de 2.0-driver