Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A megbízható, skálázható és biztonságos felhőalkalmazások létrehozása szándékos architekturális döntéseket igényel. A cikkben ismertetett ajánlott eljárások útmutatást nyújtanak az elosztott rendszerekben felmerülő gyakori problémákhoz, például a gyorsítótárazáshoz, az adatparticionáláshoz, az API-tervezéshez és az átmeneti hibakezeléshez. Minden gyakorlat a Azure Well-Architected Keretrendszer egy vagy több pillérével foglalkozik, amely a számítási feladatok tervezéséhez a következő öt minőségi attribútumot határozza meg:
Ezek a gyakorlatok kiegészítik az Azure Architecture Center egyéb alapvető útmutatásait. Az Azure-alkalmazások tervezési alapelvei olyan magas szintű stratégiákat biztosítanak, mint az öngyógyítás és a horizontális felskálázás tervezése. A felhőtervezési minták újrafelhasználható megoldásokat kínálnak az ismétlődő architekturális problémákra. A teljesítmény-antipatternök olyan gyakori hibákat írnak le, amelyek nagy terhelés mellett skálázhatósági problémákat okoznak. Ezek az erőforrások segítenek megalapozott architekturális döntések meghozatalában.
Eljárások katalógusa
A táblázatban szereplő minden gyakorlat egy vagy több Well-Architected Framework pillérre van leképezve. Ezekkel a leképezésekkel megállapíthatja, hogy mely eljárások a leginkább relevánsak a számítási feladatban rangsorolandó minőségi attribútumok szempontjából.
| Gyakorlat | Összefoglalás | Kapcsolódó pillérek |
|---|---|---|
| API tervezési | Webes API-k tervezése a platformfüggetlenség támogatásához standard protokollok és elfogadott adatformátumok használatával. Előléptetheti a szolgáltatás fejlődését, hogy az ügyfelek módosítás nélkül fedezhessék fel a funkciókat. Javíthatja a válaszidőt a részleges válaszok támogatásával, valamint az adatok szűrésére és lapozására szolgáló módszerek biztosításával. | Működési kiválóság, teljesítményhatékonyság |
| API implementáció | Webes API-k implementálása hatékony, rugalmas, méretezhető és elérhető. Hozzon létre idempotens műveleteket, támogassa a tartalom egyeztetését, és kövesse a HTTP-specifikációt. Kezelje a kivételeket, és támogassa az erőforrások felderítését. Adjon meg módszereket a nagy kérések kezelésére és a hálózati forgalom minimalizálására. | Működési kiválóság, teljesítményhatékonyság |
| automatikus skálázás | Alkalmazások tervezése az erőforrások dinamikus lefoglalására és felszabadítására a teljesítménykövetelmények kielégítése és a költségek minimalizálása érdekében. Használja ki az Azure Monitor automatikus skálázási funkcióját, valamint a számos Azure-összetevő által biztosított beépített automatikus skálázási lehetőséget. | Költségoptimalizálás, teljesítményhatékonyság |
| háttérfeladatok | Kötegelt munkák, feldolgozási feladatok és munkafolyamatok háttérmunkaként való megvalósítása. Az Azure platformszolgáltatásokkal végezheti el ezeket a feladatokat. Események vagy ütemezések használatával aktiválhat tevékenységeket, és eredményeket ad vissza a tevékenységek meghívásához. | Megbízhatóság, működési kiválóság |
| gyorsítótárazás | Az adatok alkalmazásokhoz közeli gyors tárterületre másolásával javíthatja a teljesítményt. Tárolja gyorsítótárban azokat az adatokat, amelyeket gyakran olvas, de ritkán módosít. Az adatok lejáratának és egyidejűségének kezelése. Megtudhatja, hogyan tölthet fel gyorsítótárakat, és hogyan használhatja az Azure Managed Redis szolgáltatást. | teljesítményhatékonyság |
| Tartalomkézbesítési hálózat | Tartalomkézbesítési hálózatok (CDN-ek) használatával hatékonyan kézbesíthet webes tartalmakat a felhasználóknak, és csökkentheti a webalkalmazások terhelését. Az üzembe helyezés, a verziószámozás, a biztonság és a rugalmasság kihívásainak leküzdése. | Megbízhatóság, teljesítményhatékonyság |
| Adatparticionálás | Az adatok particionálása a méretezhetőség, a rendelkezésre állás és a teljesítmény javítása, valamint a versengés és az adattárolás költségeinek csökkentése érdekében. Használjon horizontális, függőleges és funkcionális particionálást hatékony módon. | Költségoptimalizálás, teljesítményhatékonyság |
| adatparticionálási stratégiák (szolgáltatásonként) | Particionálási stratégiák alkalmazása Azure szolgáltatásokban, például Azure SQL Database, Azure Cosmos DB, Azure Blob Storage, Azure Managed Redis és Azure Service Bus. A terhelések elosztása, a késés csökkentése és a horizontális skálázás támogatása. | Költségoptimalizálás, teljesítményhatékonyság |
| hosztnév megőrzése | Megtudhatja, miért fontos megőrizni az eredeti HTTP-állomásnevet a fordított proxy és a háttérbeli webalkalmazás között, és hogyan implementálhatja ezt a javaslatot a leggyakoribb Azure szolgáltatásokhoz. | Megbízhatóság, biztonság |
| Üzenetkódolási szempontok | Válassza ki a rendszerösszetevők között kicserélt aszinkron üzenetek terhelési struktúráját, kódolási formátumát és szerializálási könyvtárat. Fontolja meg a kompromisszumokat, például az interoperabilitást, a méretet, az emberi olvashatóságot és a sémafejlődést. | Biztonság |
| Monitorozás és diagnosztika | Monitorozási és diagnosztikai folyamattal nyomon követheti a rendszer állapotát, használatát és teljesítményét. Az adatok figyelését riasztásokká, jelentésekké és eseményindítókká alakíthatja, amelyek segítenek a különböző helyzetekben történő műveletek végrehajtásában. Ilyenek például a problémák észlelése és javítása, a lehetséges problémák elfogása, a teljesítménygaranciák teljesítése és a naplózási követelmények teljesítése. | Működési kiválóság |
| Átmeneti hibakezelés | Kezelje a nem elérhető hálózatok vagy erőforrások által okozott átmeneti hibákat. A megfelelő újrapróbálkozési stratégiák kidolgozásával leküzdhetők a kihívások. Kerülje az újrapróbálkozási kód és más antipatternek rétegeinek duplikálását. | Megbízhatóság |
Tervezési alapelvek
Mielőtt konkrét technikai problémákat kezel, hozzon létre egy erős architekturális alapokat. Az Azure-alkalmazások tervezési alapelvei olyan magas szintű stratégiákat biztosítanak, amelyek a számítási feladatokra vonatkoznak, például öngyógyításra, horizontális felskálázásra és a koordináció minimalizálására. Ezek az alapelvek meghatározzák azokat a döntéseket, amelyek megvalósításában az előző táblázatban felsorolt ajánlott eljárások segítenek.
Tervezési minták felhőkhöz
A tervezési alapelvek kialakítása után a felhőbeli tervezési minták újrafelhasználható megoldásokat nyújtanak az elosztott rendszerek ismétlődő problémáira. A cikkben szereplő ajánlott eljárások közül sok ilyen mintára támaszkodik. Az átmeneti hibakezelési útmutató például az Újrapróbálkozás mintára és a Áramkör-megszakító mintára épül. A gyorsítótárazással kapcsolatos útmutatás a Cache-Aside mintához kapcsolódik. A háttérfeladatok útmutató olyan mintákat alkalmaz, mint a Versengő fogyasztók és az Üzenetsoron alapuló terheléskiegyenlítés. Tekintse át a teljes katalógust, és azonosítsa a számítási feladat architekturális kihívásaival foglalkozó mintákat.
Teljesítmény-ellenminták
A hibák akkor is megjelenhetnek éles terhelés alatt, ha helyes alapelveket, jó mintákat és ajánlott eljárásokat alkalmaz. A felhőalkalmazások teljesítmény-elhárításai olyan gyakori kialakításokat írnak le, amelyek nem méretezhetők, vagy olyan billentyűparancsok, amelyek problémákat okoznak a funkciók hozzáadásakor. Annak érdekében, hogy a problémákat még azelőtt észlelje, hogy azok eljutnának az éles környezetbe, használja ezeket az antipatternöket ellenőrzőlistaként a tervfelülvizsgálatok és a kódfelülvizsgálatok során.
Következő lépés
- Design-alapelvek Azure alkalmazásokhoz: Kezdje az ajánlott eljárásokat ismertető alapelvekkel.
Kapcsolódó tartalom
Azure Well-Architected Áttekintés: A számítási feladat értékelése a Well-Architected-keretrendszer pillérei alapján.
Felhőtervezési minták: A gyakori architekturális kihívásokra használható újrahasználható megoldások megismerése.