Mit jelent a gyorsítótárazás? Mi az a cache?

A következőkben szeretnénk átfogó képet nyújtani arról, hogy mit is jelent a weboldalak gyorsítótárazása, avagy a caching.

Ahogy az alábbi ábrán látható, a gyorsítótárazás azt jelenti, hogy abban az esetben, ha például a weboldalunk főoldalára két ugyanolyan lekérés érkezik (tehát mindkét esetben az index.php-t, tehát a főoldalt kérik le a kliensek), akkor az első lekérés valóban megérkezik a webszerverhez, a választ eltároljuk a cacheben, és innentől kezdve meghatározott ideig (ami lehet 1 perc, de akár 1 hét is) minden további kérést már a gyorsítótárból fog kiszolgálni a szerver.

wordpress-webserver-cache

Miért hasznos a cache?

A mai modern weboldalak, így a legelterjedtebb tartalomkezelő rendszer, a WordPress is, számtalan funkciót, lehetőséget kínál a fejlesztők, és végső soron a látogatók számára is, de ennek ára van, mégpedig az idő. A WordPress példájánál maradva, egy átlagos oldal legenerálása kb 0.6-0.8 másodperc, de amennyiben nagyon sok bővítményt telepítünk fel, ez akár 2-3 másodperc is lehet, hiszen a weboldalak alapvetően működési elve az, hogy a szerver oldalon futó PHP értelmező minden egyes kérésre legenerálja nekünk a programkód és az adatbázisban tárolt adatok alapján azt az oldalt amit aztán a szerver átad a böngészőnknek, és azt megjeleníti a kijelzőnkön.

Ez akkor is így van, ha akár ezerszer egymás után ugyanazt az oldalt generálja le a webszerverünk. A weboldalak programkódjai általában meglehetősen komplexek, rengeteg memóriát és processzor időt emészt fel, mire egy oldalt legenerál a látogató számára. Ezzel ellentetében maga a legenerált oldal már általában csak egy statikus HTML szöveg, kiegészítve CSS-sel, JavaScript-tel és képekkel, amelyet már a böngészőnk fog számunkra látványos formában megjeleníteni, és a szerver is töredék idő alatt, minimális erőforrás felhasználásával tudja kiszolgálni az eltárolt statikus tartalmat.

Logikusnak tűnik tehát ezeket a generált oldalakat eltárolni, és amennyiben nem változnak, a gyorsítótárból átadni a látogató számára, így tehermentesítve a szerver erőforrásait, és könnyedén 0.1 másodperc alá vinni a weboldalunk betöltési idejét.

Mindenki használ gyorsítótárat?

A rövid válasz az, hogy még nem, de mindenkinek kellene használnia, és valószínűleg fog is a jövőben.

Az alapvető koncepció egyszerű és könnyen érthető, azonban még mindig csak a közepes és nagyforgalmű weboldalak nélkülözhetetlen kelléke, a kisforgalmú weboldalak esetén kevésbé jellemző.

A trend egyértelmű abba az irányba mutat, hogy a gyorsítótárazás egyre elterjedtebb, de a gyorsítótárazás megértéséhez szükséges némi utánajárás, edukáció, hogy ne okozzon bosszús órákat a fejlesztők és a weblap tulajdonosok számára. A gyorsítótárazásnak ugyanis működési elvéből fakadóan az a fő tulajdonsága, hogy a gyorsítótárban lévő tartalom nem változik. Tehát amikor a weboldal tulajdonosa, vagy fejlesztője változtatni szeretne a weboldalon, akkor figyelnie kell rá, hogy a gyorsítótárat törölje. Ez gyakorlatilag a cPanel felületünkön egy plusz gombnyomás, ami apróságnak tűnik ugyan, de csak akkor, ha birtokában vagyunk ennek az információnak. Ha nem tudjuk, vagy megfeledkezünk róla hogy weboldalunk gyorsítótárat használ, akkor órákon át tartó fejtörést okozhat, hogy vajon miért nem változott meg weboldalunk tartalma annak ellenére, hogy az előbb írtuk át a wordpress szerkesztőjében.