hogyan és miért kell figyelni a szerver CPU használatát

amikor bármilyen alkalmazást használok, azt akarom, hogy gyors legyen. A gyors alkalmazások boldoggá tesznek. És biztos vagyok benne, hogy ez mindenkivel így van. Ha rendelkezik olyan alkalmazással, amely működik az interneten, elengedhetetlen, hogy a szerver teljesítményére összpontosítson. Van egy csomó dolog, hogy vigyázzon, hogy egy jól teljesítő szerver. De ahhoz, hogy javítson valamit, tudnia kell, hol áll az első helyen. Ezért a szerver figyelése az első lépés a szerver teljesítményének növeléséhez.

amikor arról beszélünk, hogy mit kell figyelni a szerver teljesítményének megértése érdekében, sok mutató jöhet létre. Majd összpontosítani csak egy ebben a bejegyzésben: szerver CPU használat. Kezdjük azzal, hogy elmagyarázzuk, mi a szerver CPU-használata, majd megbeszéljük, miért és hogyan kell figyelni.

CPU Scalyr színekben, ami a szerver cpu-használatának monitorját jelzi

mit jelent a szerver CPU használata?

minden, ami a szerveren történik, a rendszer feladata. Ez a feladat a szerver által végrehajtott folyamatokra bomlik. A folyamatok különböző összetettségűek lehetnek, és eltérőek lehetnek abban, hogy milyen gyorsan hajthatók végre. Ennek alapján a CPU egy kis időt vesz igénybe a folyamat végrehajtásához. Más szavakkal, a CPU-t használják a folyamat végrehajtására. A CPU-használat az az idő százalékos aránya, amelyet a CPU a feladatok elvégzéséhez használ.

szerver cpu használat monitor

Idle

amikor a CPU tétlen állapotban van, a CPU nem csinál semmit. Csak arra vár, hogy egy feladatot hozzárendeljenek hozzá. Nagyon valószínűtlen, hogy a CPU tétlen állapotban van, ha egyetlen processzoros rendszere van. Még akkor is, ha nem fut semmilyen alkalmazás vagy csinál semmit, a CPU lenne használni, hogy végre operációs rendszer feladatait. De ha a rendszer több processzorral rendelkezik, akkor az egyiket vagy néhányat tétlenül láthatja. Ennek oka lehet, hogy csak egy vagy néhány processzort használnak, a többinek pedig semmi köze.

foglalt

az üresjárati állapot ellentéte a foglalt állapot, amikor a CPU-t egy folyamat végrehajtására használják. A CPU felelős a különböző típusú feladatokért. A feladatok végrehajtása során a CPU négy dolgot tesz:

  1. Fetch: a feladat elvégzéséhez szükséges utasítások a memóriában tárolódnak. A CPU-nak meg kell szereznie ezeket az utasításokat a memóriából, hogy megértse, mit kell tennie.
  2. dekódolás: a CPU utasításai különböző formátumokban lehetnek, például programban. Tegyük fel például, hogy C, Java vagy Python programot írt. A CPU-k nem tudják közvetlenül megérteni ezeket a kódolási nyelveket. Olyan formába kell dekódolnia, amit meg tud érteni.
  3. végrehajtás: Ez az, amikor a CPU valóban elvégzi a feladatot.
  4. Tárolás: miután a CPU befejezte a feladatot, visszajelzést kell adnia a feladatról. A feladat végrehajtása utáni eredményeket a memória tárolja.

I/O műveletek

ez az az állapot, amikor a CPU nem teljesen tétlen, de nem foglalt sem. A folyamat végrehajtása során előfordulhat, hogy a CPU-nak ki kell adnia néhány adatot egy másik komponensnek vagy folyamatnak. Vagy előfordulhat, hogy a CPU-nak várnia kell, hogy adatokat szerezzen egy másik folyamatból vagy összetevőből. Ebben az esetben az I/O művelet befejezésére vár, hogy folytathassa a feladat végrehajtását.

a CPU használata a CPU mértéke, ha nem tétlen állapotban van. Bár a CPU-használatot százalékban mérik, láthatta, hogy a CPU-használati értékek meghaladják a 100% – ot. Ez nem azt jelenti, hogy a CPU túlterhelt. Például 100% – nál nagyobb CPU-használatot láthat a többprocesszoros rendszerekben. A rendszer CPU-használatának értéke az egyes CPU-k CPU-használatának százalékos összege. Tehát, ha két processzora van, és az egyik CPU-használata 60%, a másik pedig 50%, a teljes CPU-használati érték 110% lenne.

mi okozza a magas CPU-használatot?

a probléma magjának megtalálása segít jobb megoldások megvalósításában a magas CPU-használat érdekében. A CPU használatának különféle okai lehetnek a használati esetek alapján. Felsorolom a leggyakoribb okokat.

magas CPU-igényű folyamatok

egyes programok nagy CPU-erőforrásokat igényelnek. Ha alacsony specifikációjú rendszered van, és egy csúcskategóriás videojátékot próbálsz futtatni, akkor a CPU-használat nyilvánvalóan a tetőn megy keresztül. Hasonlóképpen lehetnek olyan folyamatok is, amelyek nagy CPU-erőforrásokat igényelnek a működéshez. Az ilyen folyamatok vagy számos olyan folyamat, amely részösszegként magas CPU-t használ, az egyik oka lehet. Szervereken több szolgáltatás futtatása a szerver futtatásához, szimulációk stb., magas CPU-felhasználást okozhat.

háttérfolyamatok

a folyamatok elsősorban 2 kategóriába sorolhatók: rendszerfolyamatok és alkalmazási folyamatok. A rendszerfolyamatok azok a folyamatok, amelyekre szükség van a rendszer működésének fenntartásához. Az alkalmazási folyamatok azok a folyamatok, amelyeket egy adott célra használna. Amikor ezek a folyamatok folyamatosan futnak a háttérben, elfogyasztják a CPU erőforrásait.

sok alkalmazásfolyamat fut a háttérben az alkalmazásablak bezárása után is. Ez kevésbé valószínű, hogy egy kiszolgálón történik, mert a kiszolgálót általában rendszeresen karbantartják és tisztítják, hogy csak a szükséges folyamatok legyenek, de ez még mindig lehetséges.

Malware

a Malware (rosszindulatú szoftver) olyan programok, amelyeket rosszindulatú szereplők használnak a rendszer megtámadására vagy a rendszer törvénytelen műveleteinek végrehajtására. Kezdetben a rosszindulatú programok nem használják a magas CPU-erőforrásokat, hogy rejtve maradjanak, de amikor rosszindulatú műveleteket kezdenek végrehajtani, magas CPU-felhasználást okoznak. Szemtanúja voltam ennek az esetnek, amikor egy héttel korábban rosszindulatú programokat indukáltak egy szerveren, és egy nap elkezdte az összes érzékeny adat átvitelét a szerverről a felhőtárolóba. Tehát ez a rosszindulatú program nem használt sok CPU erőforrást, miközben dolgokat állított fel és kritikus adatokat talált. De miután mindent megtalált, amire szüksége volt, az adatátvitel miatt hatalmas növekedés következett be a CPU használatában.

nem optimalizált kód

gyakori, hogy egyedi kód fut a szervereken bizonyos feladatokhoz. Ha az ilyen kódok nincsenek optimalizálva,akkor sok CPU-erőforrást használhatnak. A nem optimalizált ciklusok és a rekurzió a leggyakoribb oka a magas CPU-használatnak a nem optimalizált kód miatt.

gyakori javítások a magas CPU-használathoz

a korábban kezelt gyakori okok alapján nézzünk meg néhány gyakori javítást a magas CPU-használathoz.

Restart

a rendszer újraindítása a legtöbb számítógépes probléma megoldása. Hogyan segítene ez a CPU-használat csökkentésében? Az újraindítás bezárná az összes háttérfolyamatot, amely valamilyen művelet miatt elindulhatott, de már nincs rá szüksége. Ez megszüntetné a zombi folyamatokat vagy más folyamatokat is, amelyek a meghibásodás miatt határozatlan ideig futnak. Tehát a rendszer újraindítása megtisztítaná az összes (legalábbis a legtöbb) felesleges folyamatot, és csökkentené a CPU használatát.

háttérfolyamatok befejezése

előfordulhat, hogy a rendszer újraindítása nem lehetséges, különösen a szerverek esetében. Tehát a felesleges folyamatokat a rendszer újraindítása nélkül kell kezelnie. Ehhez felsorolhatja az összes futó folyamatot, azonosíthatja, hogy mely folyamatok feleslegesek, és befejezheti őket. Így nézne ki a windows Feladatkezelőben:

szerver cpu használat monitor

egy másik javítás az indítási folyamatok kezelése. Vannak olyan folyamatok, amelyek úgy vannak konfigurálva, hogy elinduljanak, amint a rendszer elindul. Ezek közül néhány szükséges, mások pedig nem. Azonosíthatja az ilyen folyamatokat, és letilthatja őket az automatikus indításból. A windows rendszerben megtalálhatja őket a Feladatkezelő “indítás” lapján:

szerver cpu használat monitor

Anti-Malware

a Malware veszélyes. Nem csak a CPU használat, hanem általában is. Egyes rosszindulatú programok magas CPU-használatot okoznak, és az anti-malware használata lehet a legjobb védelem az ilyen rosszindulatú programok ellen. A Modern anti-malware szoftverek okosak és fejlettek. Nem csak azonosítani tudják a rendszerben található rosszindulatú programokat, törölhetik vagy karanténba helyezhetik őket, hanem megakadályozhatják a rosszindulatú programok bejutását a rendszerbe. Tehát az anti-malware használatával nem csak a magas CPU-használatot rögzíti, hanem megakadályozza a rosszindulatú programok miatt a magas CPU-használatot is.

Kódoptimalizálás

ha megállapítja, hogy a magas CPU-használat oka a nem optimalizált kód, akkor optimalizálnia kell. Elemeznie kell a kódot, és meg kell találnia, hogy a kód mely része fogyaszt CPU erőforrásokat, és optimalizálnia kell azt.

CPU Upgrade

ha az összes többi problémát kijavította, mindent optimalizált, és továbbra is magas CPU-használatot lát, akkor ez azt jelenti, hogy a CPU-igénye magas. Ilyen esetekben nincs más lehetőség, mint a CPU erőforrásainak frissítése.

miért érdemes figyelni a szerver CPU használatát?

egy szervernek kétféle feladatot kell elvégeznie magas szinten: a felhasználótól kapott és a rendszeren belüli feladatokat. A felhasználó feladata az, amikor a felhasználó szolgáltatást vagy adatokat kért a kiszolgálótól. Tegyük fel, hogy a YouTube-on keres valamit. A YouTube szerverének le kell töltenie a keresés szempontjából releváns összes videót, és válaszként el kell küldenie a kérésére. Ez az adattranzakció CPU időt használ.

a kiszolgálónak más feladatai is vannak, mint a felhasználók megválaszolása. Magától értetődik, hogy a CPU-t az operációs rendszer és a webes szolgáltatások futtatására használják. De ettől eltekintve a kiszolgálók felhasználhatók néhány szkript futtatására az adatok feldolgozásához. Az egyik gyakori példa az Ansible playbooks futtatása. Ezek a playbookok a felhasználó beavatkozása nélkül is végrehajthatnak feladatokat.

erőforrások és feladatok kezelése

ha a CPU-használat alacsony, akkor pazarolja az erőforrásokat. És ha a CPU-használat nagyon magas, a rendszer lelassul, és elkezdhet lemaradni. Nem akarja, hogy ezek egyike megtörténjen, ezért fontos figyelni a szerver CPU-használatát. Monitoring server CPU használat segít megérteni, hogy mennyi a CPU használják. Ez segít annak eldöntésében, hogy a CPU-t több munkára tudja-e tenni, vagy növeli-e erőforrásait a szükségesség kielégítése érdekében.

optimalizáló programok

Monitoring szerver CPU használat nagyon előnyös volt az erőforrások kezelésére, valamint a feladatok optimalizálására. Vannak olyan esetek, amikor a programok több időt vesznek igénybe, mint ideális esetben. Amikor látja, hogy a CPU-használat még egy rövid, egyszerű program végrehajtása közben is magasabb, akkor tudja, hogy valami nincs rendben a programjával. Gyakran a programok nem hatékonyak a rossz programozási gyakorlat miatt. A CPU-használat figyelése segíthet megtalálni az ilyen példányokat és optimalizálni a kódot. Ezért a CPU-használat figyelése olyan, mintha két legyet ütne egyetlen kővel.

most, hogy végeztünk a CPU-használat “mi” és “miért” – jével, és megtanultuk, milyen hasznos lehet a felügyeleti szerver CPU-használata, térjünk át a “Hogyan” részre.

hogyan Monitor szerver CPU használat

CPU használat nem olyasmi, mint a pénz, hogy mentheti fel egy ideig, majd használja, ha azt szeretné, hogy. A fel nem használt CPU elpazarolt erőforrás. Ezért mindenki azt akarja, hogy a szerver CPU-használata közel 100% legyen. És ahhoz, hogy a legjobb legyen, előfordulhat, hogy meg kell tennie néhány csípést, és folyamatosan frissítenie kell a rendszert. Ahhoz, hogy tudja, mit kell tennie, ismernie kell a szerver CPU-használatának aktuális állapotát.

a szerver CPU használatát egyetlen paranccsal ellenőrizheti. Ha Windows operációs rendszerrel rendelkezik, nyissa meg a parancssort, és futtassa ezt a parancsot:

wmic cpu get loadpercentage

látnia kell a CPU használati százalékát, amint az a képernyőképen látható:

az Ön igényei alapján rendszeresen lekérdezheti a CPU használatát, tárolhatja az adatokat valahol, majd később megnézheti. Vagy streamelheti a CPU használatát egy irányítópultra, hogy bármikor figyelemmel kísérhesse.

a legtöbb operációs rendszer beépített eszközökkel és segédprogramokkal rendelkezik a CPU-használat felügyeletéhez. De ezeknek az eszközöknek vannak korlátai, és általában túl alapvetőek. A jelen korban fejlett képességekre van szükségünk a megfigyelési adatok kezeléséhez és az azokkal kapcsolatos munkához, és ez megköveteli a fejlett megfigyelési eszközök szükségességét. Szinte minden szolgáltatás online. A szerverek pedig fontos szerepet játszanak ezen szolgáltatások elérhetővé tételében. Nem engedheti meg magának, hogy várjon néhány órát, hogy tudja, hogy a szerver nem működik a magas CPU-használat miatt. Folyamatosan figyelemmel kell kísérnie a CPU-használatot és az egyéb kiszolgálói mutatókat.

Monitor folyamatosan

ellenőrzése szerver CPU használat egy ponton az időben nem sok haszna. Szüksége van egy megoldásra a szerver CPU-használatának folyamatos figyelemmel kísérésére. Szinte minden szerver operációs rendszerhez tartozik egy teljesítményfigyelő, ahol bármikor láthatja a CPU használatát. A szerver CPU-használatának figyelésekor tüskéket kell keresnie, mivel a CPU-használat hirtelen változásai azt jelezték, hogy valami szokatlan történt.

a CPU-használat valós idejű nyomon követése mellett ezeket az adatokat is tárolni szeretné, hogy különböző időközönként megjeleníthesse és elemezhesse azokat. Ahhoz, hogy a legtöbbet hozza ki a CPU-használati statisztikákból, rendszeres időközönként (lehetőleg valós időben) naplófájlok generálásával kell gyűjtenie a CPU-használati adatokat, és grafikonok formájában kell megjelenítenie azokat. Most beszéltünk egy mutatóról, de ne felejtsük el, hogy a szerver CPU-használatát nem csak figyelni kell. Ahhoz, hogy mindent, amire szüksége van egy helyen, használja Scalyr.

Leave a Reply

Az e-mail-címet nem tesszük közzé.