
Sisukord
WordPress on andmebaasikeskne platvorm. Iga lehe laadimine tähendab andmebaasipäringuid – menüü, vidinad, postitused, seadistused, kasutajaõigused. Lihtsal blogil on paarkümmend päringut lehe kohta. Keerukamatel saitidel – WooCommerce pood, palju pluginaid, dünaamiline sisu – võib see number olla sadu.
Iga päring võtab aega. Väike aeg, aga korrutatud saadikul olevate päringute arvuga annab see kokku märgatava viivituse. Ja see viivitus kajastub TTFB-s – serveri vastamisajas, mida Google mõõdab.
Redis Object Cache lahendab selle elegantselt: salvestab andmebaasipäringute tulemused mällu. Järgmine kord sama päring tuleb, vastus tuleb mälust – andmebaasi ei lähe üldse.
Mis on Redis
Redis on avatud lähtekoodiga mälupõhine andmebaas, mida kasutatakse vahemäluna. Erinevalt tavalisest andmebaasist, kus andmed on kettal, hoiab Redis kõik mälus (RAM). See teeb selle plahvatuslikult kiireks – mälu lugemine on tuhandeid kordi kiirem kui kettalt lugemine.
WordPress Object Cache on WordPress-i sisseehitatud vahemälikiht, mis vaikimisi salvestab andmed ainult ühe lehe laadimise ajaks (mälus, aga ainult praeguse PHP protsessi jaoks). Redis laiendab seda nii, et vahemälu püsib päringute vahel – järgmine külastaja saab samad tulemused mälust, ilma andmebaasi küsimata.
Mida Redis täpselt vahemällu salvestab
Redis ei vahemäluta kogu lehte (see on WP Rocketi töö). Redis salvestab andmebaasipäringute tulemused – spetsiifiliselt WordPress-i objekte:
- Menüü struktuur
- Vidinate seadistused
- Kasutajaõigused ja rollid
- Postituste metaandmed
- Saidi seadistused (
get_option()päringud) - Transient-id (ajutised andmed, mida pluginad salvestavad)
- WooCommerce tooteandmed, hinnakirjad, laoseis
Need on päringud, mis korduvad igal lehe laadimisel – ja mille tulemused muutuvad harva. Redis salvestab need üks kord ja serveerib kiirest mälust nii kaua, kuni andmed muutuvad.
Miks see eriti oluline on
Dünaamiline sisu – lehekiire cache (WP Rocket) ei aita lehtedel, mis on kasutajaspetsiifilised: sisselogitud kasutajad, WooCommerce ostukorv, personaliseeritud sisu. Neid lehti ei saa vahemälustada. Redis aga töötab ka seal – andmebaasipäringud on kiired isegi kui leht ise genereeritakse iga kord uuesti.
Suur tootekataloogi pood – WooCommerce pood tuhande või enama tootega teeb iga lehe laadimisel palju päringuid. Hinnad, laoseis, tooteomadused, kategooriad – kõik päringud. Redis vähendab andmebaasi koormust drastiliselt.
Kõrge liiklusega saidid – mida rohkem külastajaid, seda suurem koormus andmebaasile. Redis puhverdab päringuid ja vähendab andmebaasi koormust, mis hoiab serveri stabiilsena ka liikluse tipphetkedel.
Mitme saidi keskkond – kui ühel serveril töötab mitu WordPressi saiti, jagavad nad andmebaasi ressursse. Redis vähendab iga saidi andmebaasi koormust, mis hoiab kõik saidid kiiremana.
Kuidas Redis seadistada
Eeldused
Redis vajab serveripoolset tuge – see peab olema serveris installitud ja konfigureeritud. Zone.ee virtuaalserveritel on Redis saadaval. Kontrolli oma hosting pakkujalt, kas Redis on saadaval.
Jagatud majutuses (odavad paketid) Redis tavaliselt ei ole saadaval – see on veel üks argument kvaliteetse hostimise kasuks.
WordPress plugin
Pärast serveri Redis toe kinnitamist installi Redis Object Cache plugin (autor Till Krüss – see on standardlahendus, mida kasutatakse laialdaselt).
Plugin → Settings → Enable Object Cache. Kui ühendus serveriga toimib, näitab plugin “Connected” staatust.
// wp-config.php – lisa enne "That's all, stop editing!" rida
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_DATABASE', 0);
// Valikuline – prefix kui mitu saiti samas Redis instansis
define('WP_REDIS_PREFIX', 'minu_sait_');
Kontroll
Redis Object Cache plugini statistika näitab:
- Hit ratio – kui suur osa päringuid vastas mälust. Üle 80% on hea, üle 90% on suurepärane
- Calls – mitu andmebaasipäringut tegi leht
- Ratio – kui palju päringuid läks mälust vs andmebaasist
GTmetrix ja PSI näitavad TTFB paranemist – tavaliselt 30–60% vähenemine pärast Redis aktiveerimist.
Kuidas Redis täpselt seadistada? Vaata lähemalt Eesti suurimate veebimajutuse teenuspakkujate infot: Zone Media | Veebimajutus.ee
Redis vs lehekiire cache – kumb millal
Need ei ole konkurendid – need täiendavad teineteist.
Lehekiire cache (WP Rocket) – salvestab valmis HTML lehe. Töötab külastajatele, kes pole sisse logitud. Ei aita sisselogitud kasutajatel, dünaamilistel lehtedel, WooCommerce kassas.
Redis Object Cache – salvestab andmebaasipäringud. Töötab kõigil lehtedel, ka seal kus lehekiire cache ei aita. Isegi kui leht genereeritakse iga kord uuesti, on andmebaasipäringud kiired.
Optimaalne seadistus on mõlemad koos: WP Rocket + Redis. Staatilised lehed saavad lehekiirest cache-ist, dünaamilised lehed saavad Redis-ist. Tulemus on kiire leht igas olukorras.
Kokkuvõte
Redis Object Cache on üks efektiivsemaid back-end optimeerimisi WordPressile – eriti WooCommerce poodidel ja kõrge liiklusega saitidel. Seadistamine võtab mõned minutid, mõju on kohene ja püsiv.
Kui hosting seda toetab, ei ole põhjust Redis-it mitte kasutada. See on tasuta, stabiilne ja toimib vaikselt taustal – ilma et peaksid sellele rohkem mõtlema.
Seotud postitused
WordPress Cron – miks vaikimisi on murtud ja kuidas päriselt parandada
SisukordMis on WP-Cron ja miks see on probleemLahendus 1 – väline cron, WordPress viisLahendus 2 –…
Cookie banner ja jälgimiskoodid – kuidas seadistada nii, et PSI skoor ei kannata
GDPR nõuab cookie bannerit, aga vale paigaldus viib PSI skoori alla. Delayed load, Consent Mode v2…
Miks me ehitasime oma küpsiste ja jälgimise plugina
Metakirjeldus: Hundikuu arendas WordPress plugina Cookies & Tracking, mis ühendab GDPR…
Facebook Pixel WordPressile – paigaldus, sündmused ja custom audiences
Facebook Pixel on väike koodijupp, mis ühendab su veebilehe Meta reklaamplatvormiga. See jälgib,…