Základy architektury aplikací Azure
Aplikace navržená pro úlohy hostované v cloudu řeší obchodní požadavky řešení a zahrnuje nativní komponenty a funkce cloudového prostředí. Dobře navržená cloudová aplikace řeší aspekty spolehlivosti, zabezpečení, nákladů, provozu a výkonu. Tyto aspekty jsou v souladu s obchodními požadavky a specifickými charakteristikami a poskytovanými funkcemi platformy pro hostování cloudu.
Návrh aplikací pro cloudové úlohy nevyžaduje žádný konkrétní styl aplikace, jako jsou mikroslužby. Hostování cloudu ale nabízí mnoho vzorů návrhu aplikací přístupnější než hostování řešení, která nativně nenabízenou různorodý výběr možností aplikačních & datových platforem, možností škálování, ovládacích prvků zabezpečení a možností zasílání zpráv. Z toho vyplývá, že cloudové úlohy využívají aplikace, které jsou rozdělené na menší decentralizované služby podle návrhu. Tyto služby komunikují prostřednictvím rozhraní API nebo pomocí asynchronního zasílání zpráv nebo událostí. Aplikace se škálují horizontálně a přidávají nové instance podle požadavků.
Aplikace, které využívají hostitelské platformy cloudových aplikací, možnosti zasílání zpráv a dekomponované služby, podléhají běžným obavám distribuovaného systému. Stav aplikace je distribuovaný. Operace se provádějí paralelně a asynchronně. Aplikace musí být odolné, když dojde k selháním. Aktéři se zlými úmysly neustále cílí na aplikace. Nasazení musí být automatizovaná a předvídatelná. Monitorování a telemetrie jsou důležité pro získání přehledu o systému.
Typický návrh na hardware umístěný na pracovišti
- Monolitické a společně umístěné funkce a data
- Navržená pro předvídatelné škálování nebo nadměrné přidělení zdrojů
- Relační databáze
- Synchronizované zpracování
- Návrh, aby nedocházelo k chybám (MTBF)
- Prostředky poskytované prostřednictvím IT funkcí
- Snowflake a pet servery
Typický návrh cloudu
- Rozložené a distribuované funkce a data
- Navržená pro pružné škálování
- Polyglotní trvalost (kombinace technologií úložiště)
- Asynchronní zpracování
- Návrh pro odolnost proti poruchám (MTBF) a návrh pro selhání (MTTR)
- Prostředky poskytované prostřednictvím infrastruktury jako kód podle potřeby
- Neměnná a nahraditelná infrastruktura
Návrh aplikací pro Azure
Aplikace musí být navrženy cloudovými architekty, aby konkrétně využívaly výhod hostování cloudu a aby se mohli rozhodovat o strategickém kompromisu. Azure nabízí prostředky, které pomáhají architektům dosáhnout dobrého návrhu a vedení vývojových týmů v jejich implementaci. Aby bylo dosaženo návrhu úloh a aplikací, musí architekti:
- Sladění se standardy přechodu na cloud organizace
- Návrh podle architektury Azure Well-Architected Framework
- Vysvětlení typických stylů architektury , úloha osvědčených postupů
- Použití vzorů návrhu k řešení běžných problémů a zavedení strategických kompromisů
- Činit dobře informovaná rozhodnutí o technologii
- Vyhodnocení referenčních architektur
- Kontrola příruček specifických pro služby
Azure se dá použít k hostování a přehostování aplikací, které nebyly speciálně navržené pro cloud. I když je možné aplikace úloh upravit tak, aby využívaly cloudové funkce, změna hostitele aplikace navržené pro pevné prostředky a škálování se nepovažuje za nasazení nativní pro cloud.
Sladění se standardy přechodu na cloud organizace
Vaše aplikace je součástí úlohy, která pravděpodobně podléhá standardům organizace a zásadám správného řízení. Organizace libovolné velikosti a vyspělosti cloudu můžou používat architekturu přechodu na cloud pro Azure k formalizaci strategie přechodu na azure, připravenosti, inovací, správy & zásad správného řízení a zabezpečení. Součástí tohoto přístupu je standardizace konzistentního přístupu napříč úlohami, jako je použití cílových zón Azure. Cílové zóny Azure nabízejí kombinaci organizačních zásad správného řízení a zároveň umožňují týmům úloh a architektům demokratizovaný přístup k prostředkům, aby splnily lokalizované obchodní cíle. Jako architekt, který navrhuje aplikace, je důležité pochopit makro prostředí a očekávání, ve kterém bude úloha provozována, jako například cílové zóny aplikací.
Strategie přechodu vaší organizace na Azure by neměla mít vliv na vaši volbu stylu architektury, ale může to mít omezení pro volby technologií nebo hranice zabezpečení.
Návrh podle architektury Azure Well-Architected
Všechny úlohy je možné vyhodnotit v návrhu a implementaci prostřednictvím různých objektivů. Azure poskytuje architekturu Azure Well-Architected, která architektům úloh pomáhá vyhodnotit a sladit svá rozhodnutí s principy návrhu napříč pěti klíčovými pilíři architektury.
- spolehlivost
- zabezpečení
- optimalizace nákladů
- Provozní dokonalost
- efektivita výkonu
Obecně řečeno, dodržování těchto principů a vyhodnocení kompromisů mezi těmito pilíři architektury vytváří návrh, který splňuje obchodní požadavky a je dostatečně trvalý, udržovatelný, zabezpečený a optimalizovaný pro provoz v Azure. Tato rozhodnutí by měla mít vliv na volbu stylu architektury a měla by mít omezení pro volby technologií nebo hranice zabezpečení, protože souvisí s vašimi konkrétními potřebami úloh.
Váš tým nebo organizace může mít i jiné principy návrhu, ze kterých se dají vyhodnotit vaše úlohy, jako je udržitelnost a etika.
Vysvětlení typických stylů architektury
Jakmile pochopíte organizační prostředí, ve kterých vaše aplikace bude existovat, a máte obecný základ dobrého návrhu architektury z architektury Azure Well-Architected Framework, pak je obvykle prvním rozhodovacím bodem to, co druh architektury vytváříte? Může se jednat o architekturu mikroslužeb, tradiční N-vrstvou aplikaci nebo řešení pro velké objemy dat. Jedná se o odlišné styly architektury, které odpovídají výsledkům rozdílů. Při vyhodnocování architektonických stylů také vybíráte modely datových úložišť pro řešení správy stavů. Tato rozhodnutí přináší výhody a výzvy.
Vyhodnoťte různé styly architektury a modely úložiště dat .
Úlohy v rozhraní Azure Well-Architected Framework
Well-Architected Framework má oddíl věnovaný odlišným klasifikacím úloh nebo typům, nazývaným úlohami Azure Framework Well-Architected. V této části najdete články týkající se důležitých, umělé inteligence astrojového učení nebo úloh softwaru jako služby (SaaS). Tyto články specifické pro úlohy berou pět základních pilířů Well-Architected Frameworku a aplikují je na konkrétní doménu. Pokud je vaše aplikace součástí úlohy, která je v souladu s jedním z těchto zdokumentovaných vzorů, projděte si příslušné pokyny, které vám pomůžou přistoupit k návrhu, a to pomocí sady principů návrhu a doporučení specifických pro úlohy napříč běžnými oblastmi návrhu, jako jsou aplikační platforma, datová platforma, sítě a další. Některé typy úloh můžou těžit z výběru konkrétního stylu architektury nebo modelu úložiště dat.
Osvědčené postupy
Projděte si články osvědčených postupů v cloudových aplikacích a seznamte se s různými hledisky návrhu, jako je návrh rozhraní API, automatické škálování, dělení dat, ukládání do mezipaměti a podobně. Projděte si tyto a použijte osvědčené postupy, které jsou vhodné pro vaši aplikaci.
Použití vzorů návrhu k řešení běžných problémů a zavedení strategických kompromisů
Vaše aplikace má jedinečné obchodní požadavky, cíle a míry úspěchu. Architekt tyto funkční a nefunkční požadavky rozloží do samostatných aktivit, které společně spolupracují, abyste dosáhli řešení, se kterým jste vy a vaši uživatelé spokojení. Tyto aktivity jsou často natolik běžné, že vytvořily vzory používané v softwarovém průmyslu. Tyto vzory návrhu softwaru jsou pojmenované a opakovatelné přístupy použité pro zpracování nebo ukládání dat, které se osvědčily k řešení konkrétních problémů se známými kompromisy.
Katalog vzorů návrhu cloudu v Azure řeší konkrétní problémy v distribuovaných systémech.
Volba dobře informovaných technologií
Po určení typu architektury, kterou vytváříte, a vzorů návrhu, které očekáváte, můžete začít vybírat hlavní technologie architektury. Důležité jsou následující technologické volby:
Výpočetní odkazuje na model hostování výpočetních prostředků (aplikační platformy), na kterých běží vaše aplikace. Další informace najdete v tématu Volba výpočetní služby.
- Azure také nabízí specializované pokyny pro některé konkrétní aplikační platformy, jako je Volba služby kontejneru Azure a hybridních možností Azure.
úložiště dat zahrnují databáze, ale také úložiště pro soubory, mezipaměti, protokoly a cokoli jiného, co může aplikace uchovávat v úložišti. Další informace najdete v tématu Volba úložiště dat v Azure a Kontrola možností úložiště.
technologie zasílání zpráv
umožňují asynchronní zprávy mezi součástmi systému. Další informace najdete v tématu Volba služby zasílání zpráv. technologie umělé inteligence (AI) řeší problémy, které by byly výpočetně složité pro implementaci v tradičním kódu aplikace. Nápovědu k těmto možnostem najdete v tématu Volba technologie služeb Azure AI.
Pravděpodobně provedete další volby technologií, ale tyto čtyři prvky (výpočty, data, zasílání zpráv a AI) jsou centrální pro většinu cloudových aplikací a určují mnoho aspektů návrhu.
Vyhodnocení referenčních architektur
Centrum architektury Azure je domovem nápadů řešení, ukázkových úloh a referenčních architektur. Tyto články obvykle obsahují seznam běžných komponent a důležitých aspektů, které jsou v souladu s architekturou Azure Well-Architected Framework. Některé z těchto článků zahrnují nasaditelné řešení hostované na GitHubu. I když je nepravděpodobné, že by některé z těchto scénářů přesně odpovídaly vašim potřebám, můžou být dobrým výchozím bodem pro vás, abyste přizpůsobili pokyny vašim konkrétním potřebám.
Projděte si katalog architektur v Centru architektury Azure.
Kontrola příruček pro konkrétní služby
Jakmile vyberete základní technologie a proberete referenční architektury, je důležité získat přístup k dokumentaci a pokynům, které jsou specifické pro služby ve vaší architektuře. Pro pokyny pro konkrétní služby použijte následující zdroje informací.
průvodci službami Azure Well-Architected Framework: Well-Architected Framework obsahuje články týkající se mnoha služeb nabízených v Azure, kde se na danou službu uplatňuje pět pilířů architektury.
Najít a přečíst si příručku služby pro všechny prostředky, které se považují za součást návrhu aplikace.
průvodci spolehlivostí Azure: Centrum spolehlivosti Azure obsahuje podrobné články, které konkrétně řeší charakteristiky spolehlivosti mnoha služeb Azure. Tyto články popisují některá z nejdůležitějších témat spolehlivosti, jako je podpora zóny dostupnosti a očekávané chování při různých typech výpadků.
Najít a přečíst si průvodce spolehlivostí pro všechny prostředky, které se považují za součást návrhu aplikace.
Pochází z jiného cloudu?
Pokud máte zkušenosti s návrhem aplikací u jiného poskytovatele cloudu, mnoho stejných základů se dá aplikovat. Například styly architektury a vzory návrhu cloudu jsou koncepčně nezávislé na cloudu. Projděte si relevantní články s mapováním služeb a architekturou.