A rövid válasz: Igen is meg nem is!
Sokan a tárhelyek erőforrásait az otthoni számítógépek erőforrásaihoz hasonlítják. Ez részben érthető, hiszen az alapfogalmak (CPU, memória) azonosak, a működésük azonban több ponton eltér.
Egy otthoni számítógépen az alkalmazások többsége több szálon fut, vagyis minél több CPU-mag áll rendelkezésre, annál gyorsabban képesek feldolgozni az adatokat. Ilyen környezetben a plusz CPU valóban közvetlen sebességnövekedést eredményez.
Webtárhely esetén a helyzet más. A PHP-alapú weboldalak működésénél a feldolgozás jellemzően nem több szálon történik egy kérésen belül, ezért a több CPU-mag elsősorban az egyidejű látogatók kiszolgálásában játszik szerepet, nem az egyes oldalletöltések gyorsításában.
A PC ben a több memória azért növeli a sebességet, mert egyszerre sok nagyméretü alkamazást futtatunk, és ha nincs elég memória akkor a PC elkezd SWAP-olni. (merevlemezre írni, ami jóval lasabb mint memóriából dolgozni)
A memória szerepe szintén eltér az otthoni PC-khez képest. Tárhelyeken nincs swapolás, itt két lehtséges állapot van:
vagy elegendő a PHP kód és a szükséges adatbázis adatok betöltéséhez,
vagy nem elegendő, ebben az esetben a rendszer, nem tudja feldolgozni az adatokat és memóriahiányos hibát jelez.
Amennyiben a memória elegendő, a további memória növelése nem eredményez érezhető sebességnövekedést.
Nézzük kicsit közérthetőbben más kontextusba helyezve:
(itt a CPU = pénztár)
A weboldalak működése olyan, mint egy pénztár egy boltban
Feldobáljuk a szalagra a bevásárló kosár tartalmát PHP kódok, CSS kódok, adatbázis adatok, képek, stb.., amikor végeztünk a pénztárnál megkapjuk a kész weboldalt:
egy pénztár egyszerre egy vásárlót tud kiszolgálni
több pénztár → több vásárló kiszolgálása egyszerre
pár példa:
- Ha csak 1 vásárló van és 1 db pénztár, akkor nem kell várni
- Ha 1 vásárló van és 6db pénztár, akkor sem kell várni.
- Ha 6db vásárló van és 1db pénztár, akkor 5 vásárlónak várnia kell.
- Ha 6db vásárló van és 6db pénztár, akkor megintcsk nem kell várni senkinek.
Ez azt jelenti, hogy egy látogató kiszolgálása nem oszlik meg több CPU között, (1 vásárló nem tud egyszerre 2db pénztárhoz állni) hanem egyetlen CPU-mag dolgozik rajta, a folyamat elejétől a végéig.
Mikor van értelme több CPU-nak?
Ha egyszerre kevés látogató van az oldalon, akkor a több CPU nem hoz látható gyorsulást
Ha sok látogató használja az oldalt egy időben (és aktívan kattintanak), akkor:
a kérések párhuzamosan dolgozhatók fel
kevesebb várakozás alakul ki
az oldal stabilabb marad csúcsidőben
Fontos:
A látogatók többsége az oldalon már betöltött tartalmat olvassa, ami nem terheli a CPU-t
A több CPU célja nem a „gyorsítás”, hanem a nagyobb egyidejű terhelés kezelése
Mit jelent ez a gyakorlatban?
Ha egy tárhelyhez például 6 CPU-mag tartozik, és egyszerre legfeljebb 6 aktív látogató van az oldalon,
akkor nem lesz gyorsabb az oldal attól, hogy 12 CPU-magot rendelünk hozzá.Ha viszont 10 látogató van egyszerre, és ezek aktívan kattintanak (tehát új oldalakat töltenek be), akkor:
6 CPU-mag esetén 4 látogatónak várnia kell, amíg felszabadul egy feldolgozó folyamat
ez kisebb lassulást okozhat
Fontos megjegyezni, hogy:
A várakozás jellemzően csak tizedmásodpercekben mérhető
Statikus tartalom olvasása (már betöltött oldal nézegetése) nem terheli a CPU-t
Ilyen helyzetekben a több CPU-mag nem az oldalt gyorsítja, hanem a párhuzamos kiszolgálást javítja
Akkor az extra tárhely nem gyorsítja a weboldalt, ha kevés a látogató?
Az extra tárhely kismértékben javíthatja a weboldal sebességét akkor is, ha kevés a látogató. Ennek oka, hogy a nagyobb csomagokhoz jellemzően jobb háttértár-I/O teljesítmény tartozik, ami az adatok olvasását és írását gyorsabbá teszi.
Fontos azonban reálisan látni az eredményt:
ettől nem lesz kétszer gyorsabb a weboldal,
a javulás jellemzően tizedmásodpercekben mérhető,
a különbség inkább stabilitásban és egyenletesebb működésben jelentkezik.
Egy weboldal kiszolgálása összetett folyamat, amelyet egyszerre befolyásol a szerver teljesítménye, az oldal felépítése, a használt bővítmények, a gyorsítótár (cache), valamint a látogatók száma és viselkedése. Emiatt egyetlen erőforrás növelése önmagában ritkán hoz látványos gyorsulást.
Mikor számít igazán a háttértár (I/O) teljesítménye?
A háttértár sebessége akkor játszik fontos szerepet, amikor a weboldal sok adatot olvas vagy ír a kiszolgálás során. Ilyen esetek például:
nagy adatbázisokkal dolgozó oldalak
sok bejegyzést, terméket kezelő weboldalak
webshopok (kosár, rendelés, készletkezelés)
gyakran frissülő vagy admin felületen intenzíven használt oldalak
Kevés látogató és ritka adatkezelés esetén az I/O teljesítmény hatása csak minimálisan érzékelhető, míg nagyobb adatforgalomnál a gyorsabb háttértár stabilabb és egyenletesebb működést eredményez.
Mitől lesz tényleg gyors egy weboldal?
Egy weboldal sebességét nem egyetlen tényező határozza meg, hanem több összetevő együttese:
jól optimalizált weboldal (tiszta kód, kevés bővítmény)
megfelelő gyorsítótár (cache) használata
optimalizált képek és statikus tartalmak
megfelelően beállított szerver (PHP, adatbázis, erőforrások)
a látogatók számához illesztett tárhelycsomag
A tárhely erőforrásai a kereteket adják, de a tényleges sebességet az határozza meg, hogy a weboldal mennyire van jól felépítve és optimalizálva.


