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


Tervezési minták felhőkhöz

Az építészek platformszolgáltatások, funkciók és kód kombinálásával tervezik meg a számítási feladatokat, hogy teljesítsék a számítási feladatok funkcionális és nem funkcionális követelményeit. A számítási feladatok tervezéséhez ismernie kell ezeket a számítási feladatokat, majd topológiákat kell választania, és meg kell oldania a számítási feladat korlátai által támasztott kihívásokat. Felhőtervezési minták, amelyek számos gyakori kihívással foglalkoznak.

A rendszertervezés nagymértékben támaszkodik a tervezési mintákra. Az infrastruktúra, a kód és az elosztott rendszerek mind tervezési minták kombinációjára vannak tervezve. Ezek a tervezési minták hasznosak megbízható, biztonságos, költségoptimalizált, működési szempontból megfelelő és teljesítményű alkalmazások létrehozásához a felhőben.

Ezek a tervezési minták nem jellemzőek semmilyen technológiára, és bármilyen elosztott rendszerre vonatkoznak, akár az Azure-ban, akár más felhőplatformokon üzemeltetve, és némelyik akár a helyszíni vagy hibrid számítási feladatokra is kiterjedhet.

A felhőtervezési minták segítenek a tervezési folyamatban

A felhőalapú számítási feladatok hajlamosak az elosztott számítástechnika buktatóira. Néhány példa a felhőtervezési hibákra:

  • A hálózat megbízható
  • A késés nulla
  • A sávszélesség végtelen
  • A hálózat biztonságos
  • A topológia nem változik
  • Van egy rendszergazda
  • Az összetevők verziószámozása egyszerű
  • A megfigyelhetőség megvalósítása késleltethető

A tervezési minták nem szüntetik meg az ilyen fogalmakat, de segíthetnek a tudatosság, a kompenzációk és a kockázatcsökkentések kialakításában. Minden felhőminta saját kompromisszumokkal rendelkezik. Nagyobb figyelmet kell fordítania arra, hogy miért választ ki egy adott mintát, mint hogy hogyan valósítsa meg.

Egy jól megtervezett számítási feladat figyelembe veszi, hogy ezeket az iparági tervezési mintákat hogyan kell használni a számítási feladatok tervezésének alapvető építőelemeiként. Minden Azure Well-Architected pillér megjelenik ezekben a tervezési mintákban, amelyek gyakran kompromisszumokat vezetnek be más pillérek céljaival szemben.

Mintakatalógus

A katalógus minden mintája leírja a minta problémáját, a minta alkalmazásának szempontjait és a Microsoft Azure-on alapuló példát. Néhány minta kódmintákat vagy kódrészleteket tartalmaz, amelyek bemutatják, hogyan implementálható a minta az Azure-ban.

Minta Összegzés Az Azure Well-Architected Framework alappillérei
Ambassador Olyan segítő szolgáltatásokat hozhat létre, amelyek egy otthoni használatra szánt szolgáltatás vagy alkalmazás nevében küldenek hálózati kéréseket.
  • Megbízhatóság
  • Biztonság
Anti-Corruption Layer Egy előtér- vagy adapterréteget implementálhat egy korszerű alkalmazás és egy korábbi rendszer között.
  • Működési kiválóság
Aszinkron kérés-válasz Leválaszthatja a háttérbeli feldolgozást az előtérbeli gazdagépről, ha a háttérbeli feldolgozásnak aszinkronnak kell lennie, de az előtér egyértelmű választ igényel.
  • Teljesítményhatékonyság
Backends for Frontends Hozzon létre külön háttérszolgáltatásokat, amelyeket meghatározott előtérbeli alkalmazások vagy felületek használnak.
  • Megbízhatóság
  • Biztonság
  • Teljesítményhatékonyság
Bulkhead Az alkalmazás elemeit elkülönítheti készletekbe, hogy ha az egyik meghibásodik, a többi továbbra is működjön.
  • Megbízhatóság
  • Biztonság
  • Teljesítményhatékonyság
Cache-Aside Igény szerint betölti az adatokat egy adattárból származó gyorsítótárba.
  • Megbízhatóság
  • Teljesítményhatékonyság
Koreográfia Központi vezénylő használata helyett hagyja, hogy az egyes szolgáltatások döntsenek az üzleti műveletek feldolgozásának idejéről és módjáról.
  • Működési kiválóság
  • Teljesítményhatékonyság
Circuit Breaker Ha távoli szolgáltatáshoz vagy erőforráshoz csatlakozik, kezelheti azokat a hibákat, amelyek javítása esetleg sok időt venne igénybe.
  • Megbízhatóság
  • Teljesítményhatékonyság
Claim Check A nagy méretű üzeneteket jogcímellenőrzésre és hasznos adatra oszthatja fel, hogy elkerülje az üzenetbusz túlterhelését.
  • Megbízhatóság
  • Biztonság
  • Költségoptimalizálás
  • Teljesítményhatékonyság
Compensating Transaction Visszavonhat egy sorozatnyi, együttesen végül konzisztens műveletet meghatározó lépés által végrehajtott munkát.
  • Megbízhatóság
Competing Consumers Lehetővé teheti több párhuzamos felhasználó számára, hogy feldolgozzák az ugyanazon az üzenetkezelési csatornán fogadott üzeneteket.
  • Megbízhatóság
  • Költségoptimalizálás
  • Teljesítményhatékonyság
Compute Resource Consolidation Több tevékenység vagy művelet összesítése egyetlen számítási egységbe.
  • Költségoptimalizálás
  • Működési kiválóság
  • Teljesítményhatékonyság
CQRS Különböző felületek használatával elkülönítheti az adatolvasó műveleteket az adatfrissítő műveletektől.
  • Teljesítményhatékonyság
Üzembehelyezési bélyegzők Üzembe helyezheti az alkalmazás-összetevők (többek között az adattárak) több, egymástól független másolatát.
  • Működési kiválóság
  • Teljesítményhatékonyság
Peremhálózati számítási feladatok konfigurálása Központosítsa a konfigurációt, hogy megoldhassa a több rendszer és eszköz konfigurálásának kihívását az üzlethelyiségben.
Event Sourcing Használhat egy csak hozzáfűzéssel bővíthető tárat az egy tartomány adatain elvégzett műveleteket leíró események teljes sorozatának rögzítésére.
  • Megbízhatóság
  • Teljesítményhatékonyság
External Configuration Store A konfigurációs adatokat áthelyezheti az alkalmazás üzembehelyezési csomagjából egy központi helyre.
  • Működési kiválóság
Federated Identity A hitelesítést delegálhatja egy külső identitásszolgáltatónak.
  • Megbízhatóság
  • Biztonság
  • Teljesítményhatékonyság
Gatekeeper Védheti az alkalmazásokat és szolgáltatásokat egy dedikált üzemeltető példány segítségével, amely közvetítőként szolgál az ügyfelek és az alkalmazás vagy szolgáltatás között, érvényesíti és vírusmentesíti a kéréseket, valamint közvetíti a kéréseket és az adatokat közöttük.
  • Biztonság
  • Teljesítményhatékonyság
Gateway Aggregation Több egyéni kérést összesíthet egyetlen kérésbe egy átjáró segítségével.
  • Megbízhatóság
  • Biztonság
  • Működési kiválóság
  • Teljesítményhatékonyság
Gateway Offloading A megosztott vagy specializált szolgáltatásműködést kiszervezheti egy átjáró proxyra.
  • Megbízhatóság
  • Biztonság
  • Költségoptimalizálás
  • Működési kiválóság
  • Teljesítményhatékonyság
Gateway Routing Átirányíthatja a kéréseket több szolgáltatásra egyetlen végpont használatával.
  • Megbízhatóság
  • Működési kiválóság
  • Teljesítményhatékonyság
Geode Földrajzi csomópontok készletébe helyezhet üzembe háttérszolgáltatásokat, amelyek mindegyike bármely régióban bármely ügyfélkérelmet képes kiszolgálni.
  • Megbízhatóság
  • Teljesítményhatékonyság
Health Endpoint Monitoring Rendszeres időközönként működés-ellenőrzéseket implementálhat egy alkalmazásban, amelyhez az elérhetővé tett végpontokon keresztül hozzáférhetnek külső eszközök.
  • Megbízhatóság
  • Működési kiválóság
  • Teljesítményhatékonyság
Index Table Indexeket hozhat létre a lekérdezések által gyakran hivatkozott adattárbeli mezőkről.
  • Megbízhatóság
  • Teljesítményhatékonyság
Leader Election Koordinálhat egy elosztott alkalmazásban az együttműködő feladatpéldányokból álló gyűjtemény által végrehajtott műveleteket, ha vezetőnek választ meg egy példányt, amely vállalja a többi példány kezelésével járó felelősséget.
  • Megbízhatóság
Materialized View Létrehozhat előre kitöltött nézeteket egy vagy több adattár adataiból, ha az adatok formázása nem ideális a szükséges lekérdezési műveletekhez.
  • Teljesítményhatékonyság
Üzenetkezelési híd Hozzon létre egy közvetítőt, amely lehetővé teszi a protokoll vagy formátum miatt egyébként nem kompatibilis üzenetkezelő rendszerek közötti kommunikációt.
  • Költségoptimalizálás
  • Működési kiválóság
Pipes and Filters Egy összetett feldolgozást végrehajtó feladatot lebonthat különálló, újrahasznosítható elemek sorává.
  • Megbízhatóság
Priority Queue Priorizálhatja a szolgáltatásoknak küldött kéréseket úgy, hogy a magasabb prioritású kéréseket a rendszer gyorsabban fogadja és dolgozza fel, mint az alacsonyabb prioritásúakat.
  • Megbízhatóság
  • Teljesítményhatékonyság
Közzétevő/előfizető Engedélyezheti egy alkalmazás számára, hogy több érdeklődő fogyasztó számára aszinkron módon, a küldők és a fogadók összekapcsolása nélkül jelentsen be eseményeket.
  • Megbízhatóság
  • Biztonság
  • Költségoptimalizálás
  • Működési kiválóság
  • Teljesítményhatékonyság
karantén Győződjön meg arról, hogy a külső eszközök megfelelnek a csapat által elfogadott minőségi szintnek, mielőtt engedélyt kapnak arra, hogy felhasználhassák őket a számítási feladatban.
  • Biztonság
  • Működési kiválóság
Queue-Based Load Leveling Használhat egy pufferként szolgáló üzenetsort egy feladat és az általa meghívott szolgáltatás között, hogy kiegyenlítse az időszakos nagy terheléseket.
  • Megbízhatóság
  • Költségoptimalizálás
  • Teljesítményhatékonyság
Sebességkorlát minta A szabályozási korlátokhoz kapcsolódó szabályozási hibák elkerülése és minimalizálása, valamint az átviteli sebesség pontosabb előrejelzése érdekében korlátozza a mintát.
  • Megbízhatóság
Retry Engedélyezheti egy alkalmazás számára a szolgáltatásokhoz vagy hálózati erőforrásokhoz való csatlakozáskor jelentkező előre jelzett, átmeneti meghibásodások kezelését egy korábban meghiúsult művelet transzparens módon való ismételt megkísérlésével.
  • Megbízhatóság
Monda Elosztott tranzakciós forgatókönyvekben kezelheti az adatkonzisztenciát a mikroszolgáltatások között. A saga olyan tranzakciók sorozata, amelyek frissítik az egyes szolgáltatásokat, és közzétenek egy üzenetet vagy eseményt a következő tranzakciós lépés aktiválásához.
  • Megbízhatóság
Scheduler Agent Supervisor Koordinálhat egy műveletkészletet egy elosztott szolgáltatáskészleten és más távoli erőforrásokon.
  • Megbízhatóság
  • Teljesítményhatékonyság
Sequential Convoy A kapcsolódó üzeneteket meghatározott sorrendben dolgozhatja fel, más üzenetcsoportok feldolgozásának akadályozása nélkül.
  • Megbízhatóság
Sharding Egy adattárat horizontális partíció- vagy szilánkkészletté oszthat fel.
  • Megbízhatóság
  • Költségoptimalizálás
Sidecar Egy alkalmazás összetevőit külön folyamatban vagy tárolóban helyezheti üzembe, így elkülönítést és beágyazást biztosíthat.
  • Biztonság
  • Működési kiválóság
Static Content Hosting A statikus tartalmakat egy felhőalapú társzolgáltatásban helyezheti üzembe, amely közvetlenül az ügyfélnek közvetíti azt.
  • Költségoptimalizálás
Strangler Fig Növekményesen migrálhat egy korábbi rendszert oly módon, hogy egyes funkciódarabokat fokozatosan új alkalmazásokra és szolgáltatásokra cserél.
  • Megbízhatóság
  • Költségoptimalizálás
  • Működési kiválóság
Szabályozás Szabályozhatja egy alkalmazáspéldány, egyéni bérlő vagy teljes szolgáltatás által használt erőforrások felhasználását.
  • Megbízhatóság
  • Biztonság
  • Költségoptimalizálás
  • Teljesítményhatékonyság
Valet Key Jogkivonatot vagy kulcsot használhat, amely korlátozott közvetlen hozzáférést biztosít az ügyfelek számára egy adott erőforráshoz vagy szolgáltatáshoz.
  • Biztonság
  • Költségoptimalizálás
  • Teljesítményhatékonyság

Következő lépés

Tekintse át a tervezési mintákat az Azure Well-Architected pillér szempontjából, amelyet a minta optimalizálni kíván.