Direct naar de inhoud

Redis Object Cache voor WordPress uitgelegd

Home / Helpdesk / Webhosting / Redis Object Cache voor WordPress uitgelegd

Redis Object Cache voor WordPress uitgelegd

4 min leestijd

Bijgewerkt op

Redis Object Cache voor WordPress is een techniek die de database ontlast door query-resultaten in geheugen op te slaan. WordPress hoeft daardoor minder vaak naar MySQL, zodat pagina’s en WP-admin merkbaar sneller laden. We leggen uit wat Redis Object Cache precies doet, hoe het verschilt van een paginacache en wanneer het zinvol is om in te zetten.

Object-cache en paginacache

Een paginacache en een object-cache lossen verschillende problemen op. Een paginacache slaat de complete HTML van een uitgeleverde pagina op. Komt er een tweede bezoeker, dan krijgt die direct de opgeslagen HTML zonder dat WordPress, PHP of MySQL aan te pas komt. Dat is snel, maar werkt alleen voor pagina’s die voor iedereen hetzelfde zijn.

Een object-cache werkt op een laag dieper. WordPress bouwt elke pagina op uit tientallen kleine database-queries: opties uit wp_options, gebruikersdata, transients en herhaalde lookups vanuit plugins. Een object-cache bewaart de resultaten van die losse queries in geheugen. De volgende keer dat WordPress dezelfde query stelt, komt het antwoord uit Redis in plaats van uit MySQL.

Beide lagen vullen elkaar aan. Paginacache helpt anonieme bezoekers, object-cache helpt overal waar de paginacache niet werkt, zoals WP-admin, ingelogde gebruikers en pagina’s die per bezoeker verschillen.

Waarom Redis

Redis is een in-memory key/value store. Redis bewaart gegevens in het werkgeheugen in plaats van op schijf, zodat lezen en schrijven binnen microseconden gebeurt. De standaard object-cache van WordPress bestaat alleen tijdens één paginaverzoek. Redis bewaart de cache ook tussen verzoeken door.

Het verschil is meetbaar. Een WordPress-installatie zonder persistent object-cache stuurt per pagina al snel tientallen queries naar MySQL. Met Redis ervoor komen veel van die gegevens uit het geheugen. Dat ontlast de database, maakt WP-admin sneller en geeft meer ruimte bij drukte.

Wat Redis precies bewaart

Redis Object Cache vangt vooral de queries op die WordPress en plugins keer op keer herhalen:

  • Autoloaded options: alle instellingen uit wp_options met autoload = yes. WordPress laadt die bij elke pagina in één keer in. Hoe groter die set, hoe meer winst de cache oplevert.
  • Transients: tijdelijke waarden die plugins gebruiken voor zaken als feeds, API-antwoorden en geaggregeerde tellingen. Zonder persistent object-cache landen die in wp_options, met Redis blijven ze in geheugen.
  • Herhaalde queries van plugins: WooCommerce, membership-plugins en SEO-suites doen vaak dezelfde database-queries, binnen één verzoek en tussen verzoeken door.
  • User-meta en post-meta: gegevens uit de meta-tabellen worden bewaard en hergebruikt.

Wanneer is het zinvol?

Redis Object Cache levert het meest op bij sites waar de paginacache vaak niet werkt:

  • WooCommerce-shops: cart, checkout en account-pagina’s zijn per bezoeker uniek en draaien dus altijd door PHP en MySQL heen.
  • Membership- en LMS-platforms: ingelogde gebruikers krijgen gepersonaliseerde content, een paginacache helpt daar nauwelijks.
  • Sites met veel zware plugins: hoe meer plugins, hoe meer queries per verzoek, hoe groter de winst.
  • Sites met een opgeblazen wp_options-tabel: veel autoloaded options betekent veel werk bij elke pagina.

Voor een eenvoudige bedrijfssite met een goede paginacache is de winst kleiner. De paginacache vangt de meeste bezoeken dan al op. Meer over snelheid lees je in WordPress sneller maken.

Bij Chessweb, op het Businesspakket

Op het Chessweb Businesspakket is Redis Object Cache standaard beschikbaar voor WordPress-sites. Je kunt daar drie cache-lagen inzetten:

  • De plugin Redis Object Cache van Till Krüss, die WordPress verbindt met Redis op de server.
  • Opcache op PHP-niveau, dat gecompileerde PHP-code in het geheugen houdt, zodat PHP scripts niet bij elk verzoek opnieuw hoeft te verwerken.
  • Een caching-plugin voor de paginacache, die wij leveren.

Wil je Redis gebruiken? Vraag het aan via support, dan zetten wij het voor je aan.

Op het Advanced-pakket is de Redis-laag niet beschikbaar. Daar gebruik je een paginacache-plugin zoals WP Super Cache die je zelf installeert via WP-admin. Wil je Redis Object Cache gebruiken, stap dan over naar het Businesspakket. Heb je een eigen server bij Chessweb, dan kunnen we Redis Object Cache daar ook voor je instellen.

Hoe weet ik of het aanstaat?

WordPress heeft een ingebouwde diagnose die laat zien of er een persistent object-cache actief is. Je vindt die in WP-admin:

  1. Ga in WP-admin naar Gereedschap → Sitediagnose (Tools → Site Health).
  2. Open het tabblad Status.
  3. Kijk in de lijst met tests naar persistent object cache.
  4. Meldt de test dat een persistent object cache actief is, dan draait Redis Object Cache.

De plugin Redis Object Cache heeft ook een eigen instellingenpagina onder Settings → Redis, met live statistieken over hits, misses en geheugengebruik. Zo zie je hoeveel werk Redis de database uit handen neemt.

Hulp nodig? Onze support kijkt met je mee, neem contact op.

Webhosting met 99,9% uptime en telefonische ondersteuning

Op Advanced en Business verhuizen we 1 website kosteloos voor je. Binnen 24 uur live, vaak dezelfde dag.