Hogyan oldhatók meg az erőforrás-túllépési problémák

Minden webtárhely-fiókra erőforráskorlátokat alkalmaz a CloudLinux LVE (Lightweight Virtual Environment), egy kernel szintű technológia, amely be van építve a szerverbe. Ezek a korlátok biztosítják, hogy minden weboldal méltányos és egyenlő hozzáférést kapjon a számára kiosztott erőforrásokhoz. 

Ezek az erőforrások magukban foglalják a CPU-t, a fizikai memóriát, a belépési folyamatokat és az aktív folyamatok számát. Az elfogadható értékeket, valamint ezek puha és kemény burst értékeit megtalálod az Elfogadható Használati Szabályzatunkban

Ha a fiókod rendszeresen eléri ezeket a korlátokat, ezt nevezzük erőforrás-túllépésnek. Ez lassabb webhely-működéshez, hibaüzenetekhez vagy időtúllépéshez vezethet a fiókodon tárolt webhelyeken. 

MEGJEGYZÉS: Ha a tárhelyfiókod egyik domainje túllépi az erőforrás-korlátot, az összes többi, ugyanazon fiók alatt tárolt domain is érintett lesz, mivel ugyanazt az erőforrás-készletet osztják meg.

Ez a cikk segít azonosítani és megoldani az erőforrás-túllépést.

Jelenlegi erőforrás-használat ellenőrzése 

A tárhelyfiókod erőforrás-használatának ellenőrzéséhez a cPanelben nézd meg a Statisztika szekciót a jobb oldalon:

MEGJEGYZÉS: A tárhelyfiók erőforrás-korlátairól értesítéseket is kapsz a Spaceship fiókodban. A teljesebb információért azonban kérjük, tekintsd meg a cPanel fiókod "Hosting Usage" menüjét.

Az Elfogadható Használati Szabályzatunk megsértései a „Hosting Manager” menüben lesznek felsorolva > kattints a kérdéses tárhelycsomag melletti „Kezelés” gombra > a Hosting használat szekció > a Jelentések naplója alfejezetben.  

Nézzük meg a legfontosabb erőforrás-mutatókat, és hogy ezek hogyan befolyásolják webhelye teljesítményét:

CPU-használat

A CPU-használat azt mutatja, hogy a kiosztott CPU teljesítményből mennyit használsz egy adott pillanatban. Ez a tárhelyfiókod teljes kapacitásának százalékában jelenik meg.

Ha a CPU-használat eléri a 100%-ot, a fiókod minden kiosztott erőforrását felhasználja. Ennek eredményeként az új folyamatok késleltetve lesznek (alvó állapotba kerülnek), amíg a meglévők be nem fejeződnek. Ez észrevehető lassulást okozhat, szélsőséges esetben pedig a webhely időtúlléphet.

Virtuális memóriahasználat

Ez arra a memóriamennyiségre utal, amelyet a folyamatok igényelhetnek a LVE (Lightweight Virtual Environment)-en belül.

Amikor egy folyamat memóriát próbál lefoglalni, a CloudLinux ellenőrzi, hogy a teljes virtuális memóriahasználat a beállított korláton belül marad-e. Ha a korlát túllépésre kerül, az új memóriafoglalás blokkolva lesz, ami általában a folyamat hibájához vezet.

Fizikai memóriahasználat (RAM)

A fizikai memória a fiókodhoz rendelt tényleges RAM-ot jelenti. A virtuális memóriával ellentétben (amely gyakran lemezterületet, például swap fájlokat használ), a fizikai memória a valós idejű aktív feladatokat kezeli. 

Például egy nagy bejegyzés közzététele ideiglenesen az összes elérhető fizikai memóriát felhasználhatja. Ez rövid távú lassulást okozhat, de a használat általában visszaáll a normális szintre, amint a feladat befejeződik.

Ha a fizikai memóriahasználatod eléri a korlátot, PHP hibákat tapasztalhatsz a weboldaladon. Ritka esetekben CloudLinux hibaoldal is megjelenhet. Ezek a problémák általában rövid ideig tartanak, és automatikusan megoldódnak, amikor a használat a küszöbérték alá csökken.

Belépési folyamatok

A belépési folyamatok azt jelentik, hogy egyszerre hány folyamat lép be a fiókodba. Minden felhasználó által futtatott PHP vagy CGI szkript egy belépési folyamatot indít. Bár gyakran összekeverik a "megengedett látogatók számával", ezek a folyamatok általában olyan gyorsan lefutnak, hogy még több felhasználó esetén sem valószínű, hogy eléred a korlátot – kivéve, ha hirtelen nagy forgalom érkezik a webhelyedre.

Folyamatok száma

Ez a mutató minden, a fiókod által generált folyamatot tartalmaz, nem csak a PHP-t, SSH-t vagy cron feladatokat. Ez egy tágabb korlát, amely a teljes aktivitást tükrözi.

Még nagy terhelés mellett is ez a szám általában alacsony marad, mert a legtöbb nem-PHP folyamat rövid és gyorsan befejeződik.

I/O használat (Input/Output)

Az I/O használat azt méri, hogy mennyi lemezműveletet generál a fiókod. Minden adatolvasási vagy -írási művelet – például biztonsági mentések vagy fájlfeltöltések – beleszámít ebbe a korlátba.

Az igazságos teljesítmény biztosítása érdekében minden fióknak maximált lemezsebessége van. Ha eléred ezt a korlátot, a folyamataid továbbra is futnak, csak lassabban.

A legtöbb esetben nem fogod észrevenni az I/O használatot, hacsak nem végzel lemezintenzív feladatokat, például nagy webhelymentést készítesz.


Az aktív folyamatok meghatározása a fiókban

Ha a tárhelyfiókod elér bizonyos erőforrás-korlátokat, az első lépés az, hogy azonosítsd, mely folyamatok járulnak hozzá a túlhasználathoz.

SSH-n keresztül

Ha a probléma néhány percnél tovább fennáll, SSH-n keresztül megtekintheted a fiókodban a csúcsidőszakban futó aktív folyamatokat:

  1. Győződj meg róla, hogy az SSH engedélyezve van a tárhelyfiókodban a „Shell kezelése” cPanel menüben található kapcsolat állapotának ellenőrzésével. Ha az SSH le van tiltva, kövesd az ebben a cikkben leírt lépéseket az aktiváláshoz.

  2. Navigálj a cPanelben a Terminál menüponthoz, és futtasd az alábbi parancsok egyikét, hogy azonosítsd a fiókodban futó aktív folyamatokat:

    - ps faux
    - top -c

    Ezután megjelenik egy lista azokról a folyamatokról, amelyek a legtöbb erőforrást használják a tárhelyfiókodban (CPU, virtuális memória stb.). A feladatok száma, valamint azok állapota (aktív, alvó vagy leállított) is látható lesz a parancs kimenetében.

    Szeretnénk megmutatni, hogyan néz ki a „top -c” parancs kimenete, és útmutatást adni a helyes értelmezéséhez:


    Íme egy egyszerű útmutató az ilyen típusú kimenet olvasásához:

    1. Az első sor - megadja az aktuális időt, az utolsó rendszerindítás óta eltelt időt, a bejelentkezett felhasználói munkamenetet és az átlagos rendszerterhelést (az elmúlt egy, öt és tizenöt percben).

    2. A második sor - felsorolja az összes folyamatot a tárhelyfiókban: futó, alvó, leállított és zombi (amelyeket leállítottak, de nem távolítottak el megfelelően).

    3. A harmadik sor - információt ad arról, hogyan használja a CPU-t százalékban, ahol:

      • us = felhasználói folyamatok

      • sy = rendszerfolyamatok

      • ni = nice prioritásnövelés

      • wa = I/O befejezésére várakozási idő

      • hi = hardveres megszakítások

      • si = szoftveres megszakítások

      • st = a hipervizor feladat által a virtuális géptől elvett idő

    4. A negyedik és ötödik sor - a memóriahasználatot (RAM) jelzi: összes, használt, szabad és pufferek.

    5. A következő sorok részletezik az aktuális folyamatokat:

      • PID - a folyamat azonosítója

      • USER - a cPanel felhasználó, aki a folyamat tulajdonosa

      • PR - a folyamat prioritása

      • NI - a folyamat nice értéke

      • VIRT - a folyamat által használt virtuális memória

      • RES - a folyamat által használt fizikai memória

      • SHR - a folyamat által használt megosztott memória

      • S - a folyamat állapota (S - alvó, D - megszakíthatatlan alvás, R - futó, T - leállított, Z - zombi)

      • %CPU - a folyamat által használt CPU százaléka

      • %MEM - a folyamat által használt fizikai memória százaléka

      • TIME+ - a folyamat által használt teljes CPU idő

      • COMMAND - a folyamat neve


  3. Mielőtt bármilyen folyamatot megszakítanál feltételezett hack esetén, nézd át a meglévő cron feladatokat a cPanel fiókod Cron feladatok menüjében. Ha gyanús bejegyzéseket vagy ismeretlen cron feladatokat találsz, érdemes eltávolítani őket, hogy megakadályozd a potenciálisan veszélyes szkriptek futtatását.

    Miután azonosítottad a problémát okozó konkrét folyamatot, megszakíthatod azt a kill -9 PID SSH parancs futtatásával a „Terminál” menüben, ahol a PID az előző lépésben kapott folyamat azonosítója.

    Az összes folyamat megszakításához a rendszerfolyamatok kivételével a következő parancsot használhatod:

    ps aux | grep -v 'bin/bash' | awk '{ print $2 }' | grep -v PID | xargs kill -9

  4. Ezután azonosítsd, hogy mely MySQL folyamatok futnak jelenleg.

    Az összes MySQL folyamatot ellenőrizheted a cPanel fiókodban (1), vagy ellenőrizheted őket MySQL felhasználónként (2).

    Ehhez nyisd meg a Terminált a cPanelben, és futtasd az alábbi parancsok egyikét:

    Az összes MySQL folyamat ellenőrzése a teljes tárhelyfiókhoz:
    mysql -u $CPANEL_USER -p -e "SHOW PROCESSLIST;"

    MySQL folyamatok ellenőrzése egy MySQL felhasználóhoz:
    mysql -u $MYSQL_USER -p -e "SHOW PROCESSLIST;"

    Győződj meg róla, hogy a „CPANEL_USER” helyére a cPanel felhasználónevedet írod be a tárhelyfiók (1) ellenőrzéséhez, illetve a „$MYSQL_USER” helyére a konkrét MySQL adatbázis felhasználónevet az egyes MySQL felhasználók (2) ellenőrzéséhez.

    Ezután add meg a cPanel fiók jelszavát (1) vagy a konkrét adatbázis felhasználó jelszavát (2):


  5. Az utolsó lépés az, hogy megszakítsd a MySQL folyamatokat egy adott adatbázis felhasználóhoz. Ezt csak az Ügyfélszolgálatunk tudja elvégezni. Fordulj hozzánk bizalommal, és örömmel segítünk.

A „Resource usage” menüben 

Ha a probléma csak néhány másodpercig tart, nehéz lehet azonosítani az azt okozó folyamatokat, mivel ilyen rövid időszakokról nem készül napló. 

Azonban bármikor ellenőrizheted a cPanelben a Erőforrás-használat menüt, hogy megnézd a korábbi trendeket. Ez segíthet azonosítani a mintákat vagy meghatározni, mely erőforrások közelítik meg a korlátot:


A gyakran elért erőforrásokról szóló üzenet közvetlenül a menü megnyitása után jelenik meg > a „Dashboard” szekció alatt, hivatkozással a pontos korlátokra: 

A menü Jelenlegi használat szekciója alatt használd az Időkeret legördülő menüt, hogy kiválaszd az időszakot, és megnézd, hogyan használták az erőforrásokat ebben az időben:


A kiválasztás után diagramokat és táblázatokat láthatsz a részletes statisztikákkal:



Íme egy egyszerű útmutató a fenti táblázatban szereplő értékekhez:

  • CPU – CPU korlát

  • vMEM/vM – Virtuális memória korlátok

  • pMEM/pM – Fizikai memória korlátok

  • EP – Belépési folyamatok

  • nPROC/nP – Folyamatok száma

  • IO – Input/Output korlátok

  • A – átlagos használat

  • L – a fiókra beállított korlát

  • F – hiba

Lehetséges problémák az aktív folyamatok megszakításakor a cPanelben

Az aktív folyamatok leállítása a cPanelben segíthet a teljesítményproblémák kezelésében, de légy óvatos – új problémákat is okozhat. Az alábbiakban néhány kulcsfontosságú területet sorolunk fel, amelyeket érdemes szem előtt tartani:

  • Adatintegritás: Egy folyamat erőszakos megszakítása veszélyeztetheti az adatintegritást. Különösen, ha ez a folyamat adatírást vagy -frissítést végez a fiókban. A legjobb, ha ellenőrzöd, hogy a folyamat nem kapcsolódik kritikus adatbázis-műveletekhez, mielőtt megszakítod.

  • Befejezetlen tranzakciók: Egy folyamat művelet közbeni leállítása befejezetlen tranzakciókat hagyhat maga után, és problémákat okozhat az adatbázis állapotában. Szélsőséges esetben ez adatvesztéshez vagy sérüléshez vezethet.

  • Szolgáltatáskimaradás: Egyes folyamatok, például a MySQL-hez kapcsolódók, alapvető fontosságúak a fő szolgáltatásokhoz. Ezek megszakítása ideiglenes szolgáltatáskimaradást és a webhely működésének zavarát okozhatja.

  • El nem mentett módosítások: Ha egy beállításokat kezelő folyamatot a módosítások mentése előtt szakítanak meg, az befolyásolhatja a funkciók vagy alkalmazások működését.

  • Erőforrás-elosztás: Bár a folyamatok megszakítása felszabadíthat rendszererőforrásokat, nem oldja meg a magas használat mögötti alapvető okokat. Az ismétlődés megelőzése érdekében mélyebb elemzés szükséges.

  • Alkalmazás stabilitása: A webalkalmazásokhoz kapcsolódó folyamatok megszakítása instabillá teheti azokat. Fontos megérteni, hogyan működnek a folyamatok, mielőtt beavatkozol.

  • Naplózás és monitorozás: Egyes folyamatok naplózási vagy rendszerfigyelési feladatokat látnak el. Ezek megszakítása megszakíthatja ezeket a funkciókat, ezért ügyelj arra, hogy a kritikus naplók és monitorozó eszközök működőképesek maradjanak.

    Kritikus helyzetekben (pl. erőforrás-túllépés vagy gyanított rosszindulatú tevékenység esetén) a folyamatok leállítása szükséges lehet a kockázatok ellenére is. De mindig mérlegeld a lehetséges következményeket, mielőtt cselekszel.

Legjobb gyakorlatok a folyamatok megszakításának kockázatának csökkentésére

  • Készítsen biztonsági mentést az adatairól: Mindig készítsen biztonsági mentést, mielőtt jelentős módosításokat hajt végre, különösen adatbázisokkal dolgozva.

  • Használjon irányított leállítást, amikor csak lehet: Próbálja meg fokozatosan leállítani a folyamatokat, hogy csökkentse az adatvesztés vagy sérülés kockázatát.

  • Tiltsa le a rosszindulatú összetevőket: Ha úgy gondolja, hogy webhelyének egy adott része (például egy bővítmény vagy sablon) rosszindulatú folyamatokat generál, azonnal tiltsa le, hogy megelőzze a további károkat. Ha nem biztos benne, ellenőrizze a gyanús tevékenységeket egy szakemberrel.

  • Használjon karbantartási módot: Ha ideiglenesen karbantartási módba helyezi webhelyét, segíthet megállapítani, hogy bizonyos folyamatok automatikusan újra létrejönnek-e.

  • Figyelje szorosan: Bármely folyamat leállítása után gondosan figyelje a rendszer viselkedését, és legyen készen a váratlan problémák elhárítására.

Hogyan csökkentse az erőforrás-felhasználást a problémás folyamat azonosítása után

Miután beazonosította, mely folyamatok okozzák, hogy fiókja eléri az erőforrás-korlátokat, próbálja ki az alábbi általános módszereket a felhasználás csökkentésére:

  • Forgalmi kiugrások: Annak megtekintéséhez, hogy mikor volt túl sok aktív folyamat a fiókjában, nyissa meg az Erőforrás-felhasználás menüt > Pillanatképek > HTTP lekérdezések fület:


    Ha a kimenetben azt látja, hogy sok kérés érkezik, például az index.php oldalra, ezt okozhatja a webhely magas forgalma (például látogatók vagy botok által).

    Ellenőrizze a Awstats és a Látogatók menüpontokat a cPanelben a részletes látogatói elemzésekért, hogy megtalálja a pontos okot. A forgalom hirtelen növekedése lehet a magasabb erőforrás-felhasználás oka. Ha a látogatók száma folyamatosan nő, és továbbra is korlátozásokat tapasztal, érdemes átgondolni és frissíteni a jelenlegi tárhelycsomagot.

    A Statisztikák szekció az Awstats menüben segíthet azonosítani a magas CPU-használat forrását. Ezt a domainnévvel szemben található „Megtekintés” gombra kattintva érheti el:


    MEGJEGYZÉS: Ne feledje, hogy az Awstats menüben található adatok nem valós időben frissülnek, és csak havi statisztikák érhetők el. Ellenőrizze, mikor frissült utoljára a statisztikai adat, hogy biztosan az Ön esetéhez kapcsolódó információkat lássa. Ezt az információt a „Last Update” sorban találja.

    A hozzáférés után részletes statisztikákat láthat arról, hogy a webhely egyes elemei mennyi sávszélességet használnak, beleértve az alábbiakat is:

    • Ismeretlen botok:  Ha ilyen forgalomra nem számít, a botok blokkolhatók a robots.txt fájlon keresztül, korlátozhatók (például a Googlebot esetén), vagy teljesen blokkolhatók a .htaccess fájl és a User-Agent string segítségével.

      MEGJEGYZÉS:  Ezek a változtatások befolyásolhatják a webhely SEO-ját. Ha nem biztos benne, hogy folytatni szeretné, érdemes konzultálni egy SEO szakemberrel.

    • Képek: Ha egy képre sok kérés érkezik, az azt jelentheti, hogy DDoS vagy ön-DOS támadás történik erre a képre.

    • Oldalak: Egy weboldal oldalát vagy rajta elhelyezett terméket szintén érinthet DDoS támadás.

    • fájlok.

    • Letöltött fájlok stb.

  • Legutóbbi weboldal módosítások: Ha most először tapasztalsz erőforrás-használati problémákat, nézd át a weboldaladon végzett legutóbbi frissítéseket vagy módosításokat. Ezek hozzájárulhatnak a megnövekedett terheléshez.

  • Új bővítmények vagy témák: Ha nemrég telepítettél új bővítményt vagy témát, próbáld meg letiltani, és figyeld a webhely teljesítményét legalább 10 percig.

    A lassan betöltődő bővítményeket megtalálod a GTmetrix jelentésben > a Waterfall fülön.

    MEGJEGYZÉS: A változások nem feltétlenül lépnek életbe azonnal. Javasoljuk, hogy akár egy órán keresztül is figyeld a weboldalad viselkedését a pontos eredmények érdekében.

  • Weboldal optimalizálás: Optimalizáld weboldalad teljesítményét olyan eszközökkel, mint a Google PageSpeed Insights.

    Ezen kívül a következő bővítmények segítenek az erőforrás-használat és a weboldal általános teljesítményének figyelésében – ami rendkívül hasznos a belső szűk keresztmetszetek felderítésében:

Ha továbbra is erőforrás-problémákat tapasztalsz, kérjük, vedd fel a kapcsolatot Ügyfélszolgálatunkkal élő chaten vagy e-mailben. Segítünk azonosítani és megoldani a problémákat.

Érvényes e-mail-cím megadása kötelező