Inleiding tot Redis cache

Hoe meer bezoekers jouw website krijgt, hoe meer gegevens opgeslagen moeten worden. Wanneer je jouw databaseopslag uitbreidt, kun je meer gegevens kwijt. Echter leidt het tot langere reactietijden, wanneer meer verzoeken naar de database gestuurd worden. Een andere oplossing hiervoor is caching. 

Eén van de populaire caching-servers is Redis. Redis biedt grote voordelen zoals: 

  • Hoge snelheid
  • Ondersteuning voor meerdere programmeertalen
  • Schaalbaarheid
Databases Development
2 juli 2020
Martijn van der Put

Wat is cachen?

Caching is het proces van het opslaan van gegevens in een tijdelijke opslagcomponent, die vervolgens gemakkelijk kunnen worden opgehaald om de gegevens sneller te bedienen.


 

Caching werkt volgens het eenvoudige principe van het efficiënt hergebruiken van eerder berekende gegevens die zijn opgeslagen bovenop de eigenlijke opslaglaag. De gegevens in de cache worden meestal opgeslagen in RAM en kunnen gebruikt worden in verband met een softwarecomponent.


Hoe zorgt caching voor verbeterde klantervaring?

Laten we kijken naar een voorbeeld: Stel dat je jouw favoriete winkelportaal bezoekt en een bestelling voltooit. Om dit te doen, laten we aannemen dat de applicatie je profielgegevens tien keer moest ophalen voor verschillende stappen (verzendadres ophalen, eerdere winkelwagenitems ophalen, opgeslagen betalingsgegevens, enz.). Elke keer dat de server de database bereikt en op de toepassing reageert, duurt het 2 seconden. Dus de totale tijd die je wacht tot de toepassing is geladen, is 2 * 10 = 20 seconden.

Ervan uitgaande dat deze applicatie een cacheserver heeft, duurt het voor de eerste keer de volledige 2 seconden om de informatie uit de database op te halen. Maar daarna wordt de informatie opgeslagen in de cache. Het ophalen van details uit de cache gaat razendsnel en we gaan ervan uit dat het de helft van de tijd van het eerste verzoek (1 seconde) kost. Jouw totale wachttijd tijdens jouw winkelreis is dus 2 + 1*10= 12 seconden. Dit is bijna de helft van de tijd die je had besteed aan het wachten op het eerste scenario, wat betekent dat je ervaring met het tweede scenario veel beter zal zijn vanwege de kortere wachttijd. Maar wat nog belangrijker is, het helpt jouw toepassing om de SEO-ranglijst aanzienlijk te verbeteren, aangezien de laadtijd van de pagina een belangrijke rol speelt bij het bepalen ervan.


Wat is Redis?

Redis is een open-source NoSQL-database die effectief als cacheserver gebruikt wordt volgens het principe van een key-value store. Alleen degenen die over de sleutel beschikken, hebben toegang tot de gegevens. Redis staat voor: Remote Dictionary Server. Het ondersteunt verschillende soorten datastructuren zoals: hashes, strings, lijsten, bitmaps. 

Redis werkt meestal op de Master/Slave-configuratie en ondersteunt ook sharding, waardoor het vrij eenvoudig is om de dataset over meerdere exemplaren van Redis te distribueren. Een ander belangrijk kenmerk van Redis is dat het voornamelijk atomair werkt: je kunt veilig een key instellen of verhogen, elementen uit een set toevoegen of verwijderen of zelfs een counter verhogen.


Hoe installeer je Redis op Ubuntu? 

Voordat je begint met de installatie van Redis op Ubuntu, moet je ervoor zorgen dat je bent aangemeld met sudo-rechten. 

Stap 1. De lijst met apt-pakketten bijwerken door de onderstaande opdracht in jouw SSH-terminal uit te voeren: 



Stap 2. Installeer Redis met de onderstaande opdracht: 



Stap 3. Redis wordt automatisch gestart na installatie. Je kunt de status van de service controleren met het volgende commando: 



Als alles goed is ingesteld, krijg je geen foutmelding bij het uitvoeren van deze opdracht. Dit geeft aan dat je Redis-server klaar is voor gebruik.

Conclusie

Caching is een populair mechanisme om webpagina-inhoud snel aan bezoekers te leveren. Redis is één van de databases voor de cachingbehoeften, welke over de hele wereld te gebruiken is. 


Wil je meer informatie? Neem dan contact op.

Cookies
Deze site gebruikt geanonimiseerde cookies. Klik op "Akkoord" als je akkoord gaat met het gebruik van cookies, of klik op "Aanpassen" om je voorkeuren te bepalen.
Deze site gebruikt geanonimiseerde cookies.