Magento 2 Redis: cache és session beállítás helyesen
A Redis három feladatot lát el a Magento alatt, és a háromból kettőt szigorúan külön kell választani. Ez az oldal megmutatja a helyes felállást és a tipikus hibákat, amiket átvilágításkor találni szoktunk.
Röviden
A Redis memóriából szolgál ki, ezredmásodperc alatt. Fájl alapú cache-hez képest a különbség nagy katalóguson nem árnyalatnyi.
- Alkalmazás cacheDB 0
- Teljes oldal cacheDB 1
- Session tárDB 2
- Memória közepes áruháznál2–6 GB
- Session kidobástilos
Mire kell a Redis a Magentónak?
A Redis memóriában tartott kulcs-érték adatbázis. Fájl alapú cache-hez képest nagy katalógusnál a lemezes művelet szűk keresztmetszetté válik, a Redis ezredmásodperc alatt válaszol.
Alkalmazás cache
Konfiguráció, layout, blokk HTML és a többi cache típus. Ezek nélkül a Magento minden kérésnél újraszámolná a fél világot.
Session tár
A bejelentkezések és a kosarak állapota. Fájl alapú session helyett gyorsabb és több PHP-FPM worker mellett is konzisztens.
Teljes oldal cache
Ha nincs Varnish, a beépített FPC is Redisben tárolható. Éles áruháznál mi ehelyett Varnisht javaslunk.
Helyes felállás: külön feladat, külön adatbázis
A Magento az env.php-ban kap Redis kapcsolatot, feladatonként külön adatbázis-indexszel. Ez nem formalitás: a cache ürítése így nem dobja ki a bejelentkezett vásárlókat.
Nagy terhelésű áruháznál tovább megyünk: a session külön Redis példányt kap, mert a session elvesztése üzleti kár (eltűnő kosarak), a cache elvesztése csak átmeneti lassulás. A memória-szabály is feladatfüggő: a cache példányon a legrégebben nem használt kulcsok kidobása a jó viselkedés, a session példányon viszont a kidobás tilos, ott a memóriát kell megfelelően méretezni.
Amit beállítunk
- Memória-limit és kidobási szabály feladatonként
- Kapcsolat-tömörítés nagy cache értékekhez
- Perzisztencia a session példányon
- Lassú parancsok naplózása
- Találati arány és telitettség monitorozása
A Redis licencváltása óta a Valkey néven futó nyílt forráskódú ág is elérhető és a Magento újabb verziói támogatják. Funkcionálisan csereszabatos, a beállítási elvek azonosak.
Tipikus hibák, amikkel találkozunk
Ezek mind előkerülnek az ingyenes állapotfelmérésen. A Redis beállítás a menedzselt VPS környezetünk része, nem külön termékként adjuk.
- Cache és session egyetlen adatbázisban: cache flushnál kijelentkező vásárlók, eltűnő kosarak
- Memória-limit nélküli Redis: addig hízik, amíg az operációs rendszer le nem lőni, jellemzően csúcsforgalomban
- Rossz kidobási szabály a session táron: vásárlók véletlenszerű kiléptetése terhelés alatt
- A beépített FPC Redisben, Varnish helyett: működik, de a lehetséges sebesség töredékét adja
- Monitoring hiánya: a találati arány romlása hónapokig észrevétlen marad
Gyakran ismételt kérdések a Redisről
Kötelező a Redis a Magento 2-höz?
Mennyi memóriát adjak a Redisnek?
A Redis ürítése veszélyes?
Redis vagy Varnish kell a gyorsításhoz?
Mi az a Redis L2 cache?
Kapcsolódó cikkek
Nézzük meg a cache rétegedet
Az állapotfelmérés megmutatja a Redis beállításokat, a találati arányt és azt, hogy a session tár biztonságosan van-e leválasztva.