Megosztás a következőn keresztül:


Teljesítményhatékonysági kompromisszumok

A teljesítménycélokat túlterheltség nélkül teljesítő számítási feladatok hatékonyak. A teljesítményhatékonyság célja, hogy elegendő kínálat legyen a kereslet mindenkori kezeléséhez. A teljesítményhatékonyság fő stratégiái közé tartozik a kódoptimalizálások, a tervezési minták, a kapacitástervezés és a skálázás megfelelő használata. Ennek az alappillérnek az egyértelmű teljesítménnyel kapcsolatos céljai és tesztelése.

A számítási feladatok teljesítménycéljainak egyeztetése és a számítási feladatok teljesítményhatékonyságra való megtervezése során fontos tisztában lenni azzal, hogy a Teljesítményhatékonyság tervezési alapelvei és a Teljesítményhatékonyságra vonatkozó tervezési felülvizsgálati ellenőrzőlista ajánlásai hogyan befolyásolhatják más pillérek optimalizálási céljait. Egyes teljesítményhatékonysági döntések bizonyos pillérek előnyére válhatnak, de kompromisszumokat jelentenek mások számára. Ez a cikk a számítási feladatok architektúrájának és a teljesítményhatékonyság érdekében végzett műveleteknek a tervezésekor előforduló példákat sorolja fel.

Teljesítményhatékonyság-kompromisszumok a megbízhatósággal

Kompromisszum: Csökkentett replikáció és nagyobb sűrűség. A megbízhatóság egyik sarokköve a rugalmasság biztosítása a replikáció használatával és a meghibásodások robbanási sugarának korlátozásával.

  • Egy olyan számítási feladat, amely a skálázás késleltetésével éri el a skálázást, amíg az utolsó felelősségteljes pillanat nem felel meg az igényeknek, de sebezhető az előre nem látható csomóponthibákkal és a skálázási késésekkel szemben.

  • A számítási feladatok erőforrásainak összevonása többletkapacitást használhat, és javíthatja a hatékonyságot. Ez azonban növeli a hibás működés robbanási sugarát a közösen elhelyezett összetevőben vagy alkalmazásplatformon.

  • A kapacitásfelesleg minimalizálása érdekében történő skálázás vagy leskálázás miatt a számítási feladatok kihasználatlanok maradnak a kihasználtság kiugrása során, ami szolgáltatáskimaradásokhoz vezet a nem megfelelő kínálat miatt.

Kompromisszum: Megnövekedett összetettség. A megbízhatóság elsőbbséget ad az egyszerűségnek.

  • Az automatikus skálázás használata a számítási feladatok igény szerinti elosztásához ingadozást biztosít a számítási feladat topológiájában, és hozzáad egy olyan összetevőt, amely a rendszer megbízható működéséhez megfelelően működik. Az automatikus skálázás további alkalmazás-életciklus-eseményeket, például indítást és leállítást eredményez.

  • Az adatparticionálás és a horizontális skálázás segít elkerülni a nagy vagy gyakran használt adathalmazok teljesítményproblémáit. Ezeknek a mintáknak a megvalósítása azonban növeli az összetettséget, mivel a (végleges) konzisztenciát további erőforrások között kell fenntartani.

  • Az adatok optimalizált hozzáférési mintákhoz való denormalizálása javíthatja a teljesítményt, de összetettséghez vezet, mivel több adatmegjelenítést kell szinkronizálni.

  • A teljesítményközpontú felhőtervezési minták néha további összetevők bevezetését is szükségessé teszik. Ezeknek az összetevőknek a használata növeli a számítási feladat felületét. Az összetevőket ezután megbízhatóvá kell tenni, hogy a teljes számítási feladat megbízható maradjon. Példák:

    • Egy üzenetbusz a terhelés simításához, amely egy kritikus, állapotalapú összetevőt vezet be.
    • Az automatikusan skálázott replikák terheléselosztója, amely megbízható működést és replikák beléptetését igényli.
    • Adatok kiszervezése gyorsítótárakba, ami megbízható gyorsítótár-érvénytelenítési megközelítéseket igényel.

Kompromisszum: Tesztelés és megfigyelés aktív környezeteken. Az éles rendszerek szükségtelen használatának elkerülése a megbízhatóság önmegőrző megközelítése.

  • Az aktív környezetekben végzett teljesítménytesztelés, például a szintetikus tranzakciók használata, a tesztműveletek vagy konfigurációk miatt működési zavarok kialakulásának kockázatát hordozza magában.

  • A számítási feladatokat olyan alkalmazásteljesítmény-monitorozási (APM) rendszerrel kell létrehozni, amely lehetővé teszi, hogy a csapatok tanuljanak az aktív környezetekből. Az APM-eszköz telepítése és konfigurálása alkalmazáskódban vagy üzemeltetési környezetben történik. A nem megfelelő használat, a korlátozások túllépése vagy az eszköz helytelen konfigurálása veszélyeztetheti annak működését és karbantartását, ami ronthatja a megbízhatóságot.

Teljesítményhatékonysági kompromisszumok a biztonsággal

Kompromisszum: A biztonsági ellenőrzések csökkentése. A biztonsági vezérlők több rétegben vannak létrehozva, néha redundánsan, hogy mélységi védelmet biztosítsanak.

A teljesítményoptimalizálás egyik stratégiája, hogy eltávolítja vagy megkerüli azokat az összetevőket vagy folyamatokat, amelyek hozzájárulnak a folyamatok késéséhez, különösen akkor, ha a feldolgozási idejük nem indokolt. Ez a stratégia azonban veszélyeztetheti a biztonságot, és alapos kockázatelemzésnek kell kísérnie. Tekintse meg a következő példákat:

  • A titkosítás átvitel közben vagy inaktív állapotban történő eltávolítása az átviteli sebesség javítása érdekében az adatokat potenciális integritási vagy bizalmassági incidenseknek teszi ki.

  • A biztonsági vizsgálati vagy vizsgálati eszközök eltávolítása vagy csökkentése a feldolgozási idő csökkentése érdekében veszélyeztetheti az ilyen eszközök által védett bizalmasságot, integritást vagy rendelkezésre állást.

  • A biztonsági javítások gyakoriságának csökkentése a teljesítményre gyakorolt hatás csökkentése érdekében sebezhetőbbé teheti a számítási feladatokat a felmerülő fenyegetések ellen.

  • Ha eltávolítja a tűzfalszabályokat a hálózati folyamatokból a hálózati késés javítása érdekében, nemkívánatos kommunikációt tehet lehetővé.

  • A gyorsabb adatfeldolgozás érdekében végzett adatérvényesítés minimalizálása veszélyeztetheti az adatintegritást, különösen akkor, ha a bemenetek rosszindulatúak.

  • Ha kevesebb entrópiát használ a titkosítási vagy kivonatolási algoritmusokban, például az inicializálási vektoron (IV), hatékonyabb, de megkönnyíti a titkosítás feltörését.

Kompromisszum: A számítási feladatok felületének növelése. A biztonság prioritást ad a csökkentett és zárt felületnek a támadási vektorok minimalizálása és a biztonsági vezérlők kezelésének csökkentése érdekében.

A teljesítményközpontú felhőtervezési minták néha további összetevők bevezetését is szükségessé teszik. Ezek az összetevők növelik a számítási feladat felületét. Az új összetevőket biztonságossá kell tenni, lehetőleg olyan módon, amelyet még nem használnak a rendszerben, és gyakran növelik a megfelelőségi hatókört. Vegye figyelembe az alábbi gyakran hozzáadott összetevőket:

  • Üzenetbusz a terhelés simításához

  • Terheléselosztó automatikusan skálázott replikákhoz

  • Adatok kiszervezése gyorsítótárakba, alkalmazáskézbesítési hálózatokba vagy tartalomkézbesítési hálózatokba

  • Feldolgozás kiszervezése háttérfeladatok vagy akár ügyfélszámítások számára

Kompromisszum: Szegmentálás eltávolítása. A biztonsági pillér az erős szegmentálást helyezi előtérbe, hogy lehetővé tegye a részletes biztonsági vezérlőket és csökkentse a robbanási sugarat.

Az erőforrások megosztása a hatékonyság javítására szolgáló megközelítés. Növeli a sűrűséget a kapacitás kihasználtságának optimalizálása érdekében. Ilyenek például a több-bérlős forgatókönyvek, vagy a különböző alkalmazások kombinálása egy architektúrában egy közös alkalmazásplatformon. A megnövekedett sűrűség a következő biztonsági problémákhoz vezethet:

  • Az egyik bérlőről a másikra történő jogosulatlan oldalirányú mozgás megnövekedett kockázata.

  • A megosztott számítási feladatok identitása, amely megsérti a minimális jogosultság elvét, és elhomályosítja az egyes auditnaplókat a hozzáférési naplókban.

  • A peremhálózati biztonsági vezérlők, például a hálózati szabályok, amelyek az összes közösen elhelyezett összetevőre kiterjednek, így az egyes összetevők a szükségesnél több hozzáférést kapnak.

  • Az alkalmazásplatform-gazdagép vagy egy adott összetevő sérülése egy nagyobb robbanási sugár miatt. Ezt a növekedést a közösen elhelyezett összetevőkhöz való könnyebb hozzáférés okozza.

  • A különböző összetevők együttes meghatározása több összetevőt eredményez a megfelelőségi hatókörben a megosztott gazdagép miatt.

Teljesítményhatékonyság-kompromisszumok a költségoptimalizálással

Kompromisszum: Túl sok a kereslet. Mind a költségoptimalizálás, mind a teljesítményhatékonyság prioritást ad a kereslet kiszolgálásához.

  • A túlterheltség kockázatot jelent, ha a csapatok megpróbálják enyhíteni a számítási feladatok teljesítményproblémáinak problémáját. A túlépítés néhány gyakori oka a következők:

    • A kezdeti kapacitástervezést tévesen értelmezték, mert a csapat csak a maximális terhelésbecslésekre összpontosított, és figyelmen kívül hagyja a számítási feladatok tervezésének csúcssimítási stratégiáit.
    • Erőforrás vertikális fel- vagy horizontális felskálázása egy incidensmegoldás hibaelhárítási lépése során.
  • Az automatikus skálázás helytelenül konfigurálható. Néhány példa a helytelenül konfigurált automatikus skálázásra:

    • Az igény minimális változásaival vagy a kiterjesztett hűtési időszakkal történő vertikális felskálázás több költséggel jár, mint amennyit az igény igényel.
    • Az automatikus skálázás felső korlát nélküli használata rendszerhibák vagy visszaélés miatt ellenőrizetlen növekedéshez vezethet, és túllépheti a várt számítási feladatokra vonatkozó követelményeket.
  • A több régióra való bővítés növelheti a teljesítményt azáltal, hogy közelebb hozza a számítási feladatokat a felhasználóhoz, és elkerülheti az ideiglenes erőforrás-kapacitáskorlátokat. Emellett azonban összetettség és erőforrás-duplikáció is hozzáadva.

Kompromisszum: További összetevők. Az egyik költségoptimalizálási technika a sűrűség növelésével, a duplikációk eltávolításával és a funkciók együttes keresésével kisebb számú erőforrással való összevonás.

  • A teljesítményközpontú felhőtervezési minták néha további összetevők bevezetését teszik szükségessé. Ezek az extra összetevők általában a számítási feladat általános költségnövekedéséhez vezetnek. Előfordulhat például, hogy a jobb válaszidő érdekében egy üzenetbuszt is tartalmaz egy alkalmazás vagy tartalomkézbesítési hálózat terhelés-simítási vagy kiszervezési feladataihoz.

  • Az erőforrás-szegmentálás lehetővé teszi, hogy a számítási feladatok különböző részei eltérő teljesítményjellemzőkkel rendelkezzenek, ami lehetővé teszi az egyes szegmensek független finomhangolását. Növelheti azonban a teljes tulajdonjogi költségeket, mivel egyetlen általános összetevő helyett több optimalizált szegmenst igényel.

Kompromisszum: A funkcionális követelményeknek nem megfelelő elemekre irányuló nagyobb befektetés. A költségoptimalizálás egyik megközelítése az üzembe helyezett megoldások által biztosított érték kiértékelése.

  • A prémium szolgáltatások és termékváltozatok segíthetnek a számítási feladatoknak a teljesítménycélok elérésében. Ezek a szolgáltatások általában többe kerülnek, és további funkciókat biztosítanak. Ezek kihasználatlanok lehetnek, ha sok prémium funkciót nem használnak kifejezetten teljesítménycélok teljesítéséhez.

  • A teljesítményteljesítő számítási feladatok telemetriai adatokat igényelnek a megfigyelhetőséghez, amelyeket át kell helyezni és tárolni kell. Az összegyűjtött teljesítménytelemetria növekedése növelheti a telemetriai adatok átvitelének és tárolásának költségeit.

  • A teljesítménytesztelési tevékenységek olyan költségeket adnak hozzá, amelyek nincsenek társítva az éles rendszer értékével. A teljesítménytesztelési költségek például a következők:

    • Teljesítményközpontú tesztekhez dedikált környezetek példányosítása.
    • Speciális teljesítményeszközzel.
    • A tesztek futtatásához szükséges idő.
  • A betanítási csapat tagjai a speciális teljesítményoptimalizálási feladatokért, illetve a teljesítményhangolási szolgáltatásokért való fizetés növelik a számítási feladatok költségeit.

Teljesítményhatékonyság-kompromisszumok az operatív kiválósággal

Kompromisszum: Csökkent megfigyelhetőség. A megfigyelhetőség szükséges ahhoz, hogy egy számítási feladat értelmes riasztást biztosítson, és biztosítsa a sikeres incidenskezelést.

  • A napló- és metrikamennyiség csökkentése a telemetriai adatok gyűjtésére fordított feldolgozási idő csökkentése érdekében a többi feladat helyett csökkenti a rendszer általános megfigyelhetőségét. Néhány példa az eredményként kapott korlátozott megfigyelhetőségre:

    • Korlátozza azokat az adatpontokat, amelyek értelmes riasztások létrehozására szolgálnak.
    • Ez az incidenskezelési tevékenységek lefedettségének hiányosságaihoz vezet.
    • Korlátozza a biztonsági és megfelelőségi szempontból érzékeny interakciók és határok megfigyelhetőségét.
  • A teljesítménytervezési minták megvalósításakor a számítási feladat összetettsége gyakran nő. A rendszer összetevőket ad hozzá a kritikus folyamatokhoz. A számítási feladatok monitorozási stratégiájának és a teljesítményfigyelésnek tartalmaznia kell ezeket az összetevőket. Ha egy folyamat több összetevőre vagy alkalmazáshatárra is kiterjed, a folyamat teljesítményének monitorozásának összetettsége nő. A folyamatteljesítményt az összes összekapcsolt összetevő között korrelálni kell.

Kompromisszum: A műveletek összetettségének növelése. Az összetett környezet összetettebb interakciókkal rendelkezik, és nagyobb a valószínűsége annak, hogy a rutinműveletek, az alkalmi és a vészhelyzeti műveletek negatív hatással járnak.

  • A teljesítményhatékonyság növelése a sűrűség növelésével növeli a működési feladatok kockázatát. Egy folyamat hibáinak nagy robbanási sugara lehet.

  • A teljesítménytervezési minták implementálásával befolyásolják az olyan üzemeltetési eljárásokat, mint a biztonsági mentések, a kulcsrotálások és a helyreállítási stratégiák. Az adatparticionálás és a horizontális skálázás például bonyolíthatja a rutinfeladatokat, amikor a csapatok megpróbálják biztosítani, hogy ezek a tevékenységek ne befolyásolják az adatkonzisztenciát.

Kompromisszum: Kulturális stressz. A működési kiválóság a hibáztatás, a tisztelet és a folyamatos fejlődés kultúrájában gyökerezik.

  • A teljesítményproblémák alapvető okelemzésének elvégzése azonosítja a javítást igénylő folyamatok vagy megvalósítások hiányosságait. A csapatnak tanulási lehetőségnek kell tekintenie a gyakorlatot. Ha a csapattagokat hibáztatják a problémákért, a morál is érintett lehet.

  • A rutin- és alkalmi folyamatok hatással lehetnek a számítási feladatok teljesítményére. Ezeket a tevékenységeket gyakran célszerű csúcsidőn kívül elvégezni. A csúcsidőn kívüli órák azonban kényelmetlenek lehetnek, vagy a normál munkaidőn kívül is lehetnek azok a csapattagok számára, akik ezekért a feladatokért felelősek vagy képzettek.

Ismerkedjen meg a többi pillérre vonatkozó kompromisszumokkal: