sql >> Database >  >> NoSQL >> Redis

pipelining vs transactie in redis

Pipelining is in de eerste plaats een netwerkoptimalisatie. Het betekent in wezen dat de client een aantal opdrachten buffert en deze in één keer naar de server verzendt. De opdrachten worden niet gegarandeerd uitgevoerd in een transactie. Het voordeel hiervan is dat er voor elke opdracht netwerk-round trip-tijd wordt bespaard.

Redis is single threaded dus een individueel commando is altijd atomair, maar twee gegeven commando's van verschillende clients kunnen achter elkaar worden uitgevoerd, bijvoorbeeld afwisselend.

Multi/exec zorgt er echter voor dat geen andere clients opdrachten uitvoeren tussen de opdrachten in de multi/exec-reeks.




  1. Nginx gebruiken om inhoud rechtstreeks vanuit een redis-cache weer te geven

  2. Accenten opgeslagen in Redis zijn niet leesbaar

  3. NodeJS + MongoDB:gegevens ophalen uit verzameling met findOne ()

  4. Spark, Python en MongoDB laten samenwerken