Sdílet prostřednictvím


Základy architektury aplikací Azure

Aplikace navržená pro úlohy hostované v cloudu řeší obchodní požadavky řešení a zahrnuje komponenty a funkce nativní pro cloud. Dobře navržená cloudová aplikace řeší aspekty spolehlivosti, zabezpečení, nákladů, provozu a výkonu. Tyto aspekty odpovídají obchodním požadavkům, specifickým charakteristikám platformy pro hostování cloudu a funkcím, které platforma poskytuje.

K návrhu aplikace pro cloudové úlohy nemusíte používat konkrétní styl aplikace, jako jsou mikroslužby. Hostování cloudu ale nabízí mnoho vzorů návrhu aplikací přístupnější než řešení pro hostování, která nativně neposkytují různorodý výběr možností aplikační a datové platformy, možnosti škálování, ovládací prvky zabezpečení a možnosti zasílání zpráv. 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 horizontálně škálují přidáním nových instancí, když se poptávka zvýší.

Aplikace, které používají hostitelské platformy cloudových aplikací, možnosti zasílání zpráv a dekomposované služby, podléhají běžným obavám distribuovaných systémů. V těchto systémech je stav aplikace distribuovaný a 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 zásadní pro získání přehledu o systému.

Následující sloupce uvádějí některé běžné charakteristiky místního návrhu a návrhu cloudu.

Typický návrh na hardware umístěný na pracovišti

  • Monolitické a společně umístěné funkce a data
  • Navrženo pro předvídatelné škálování nebo je nadměrně poskytnuté
  • Relační databáze
  • Synchronizované zpracování
  • Navržená tak, aby se zabránilo selháním a měří střední dobu mezi selháními (MTBF)
  • Prostředky se zřizují prostřednictvím IT funkcí.
  • Servery Snowflake a servery pro domácí zvířata

Typický návrh cloudu

  • Rozložené a distribuované funkce a data
  • Navržená pro pružné škálování
  • Polyglotní trvalost pomocí kombinace technologií úložiště
  • Asynchronní zpracování
  • Navržena tak, aby vydržela poruchy a měřila MTBF
  • Připravenost na selhání a měření střední doby opravy
  • Prostředky se zřizují podle potřeby prostřednictvím infrastruktury jako kódu.
  • Neměnná a nahraditelná infrastruktura

Návrh aplikací pro Azure

Cloudový architekti, kteří mají zkušenosti s hostováním cloudu a můžou provádět strategická rozhodnutí o kompromisu, by měli navrhovat cloudové aplikace. Azure poskytuje prostředky, které architektům pomůžou vyvíjet aplikace a řídit vývojové týmy k jejich implementaci. Aby bylo dosaženo dobrého návrhu úloh a aplikací, musí architekti:

Azure můžete použít k hostování a přehostování aplikací, které nejsou navržené pro cloud. Aplikace úloh můžete upravit tak, aby používaly cloudové funkce, ale změna hostitele aplikace, která je navržená pro pevné prostředky a škálování, se nepovažuje za nativní cloudové nasazení.

Sladění se standardy přechodu na cloud organizace

Vaše aplikace je součástí úlohy, která pravděpodobně potřebuje splnit standardy organizace a zásady správného řízení. Organizace libovolné velikosti a vyspělosti cloudu můžou využít 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 iniciativ 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óna Azure poskytuje zásady správného řízení pro celou organizaci a poskytuje týmům úloh a architektům demokratizovaný přístup k prostředkům za účelem splnění lokalizovaných obchodních cílů. Jako architekt, který navrhuje aplikace, je důležité pochopit makroprostředí a očekávání pro operace úloh, jako jsou přijímací zóny aplikací.

Strategie přechodu na Azure vaší organizace by neměla mít vliv na styl architektury, který zvolíte, ale může omezovat volby technologií nebo hranice zabezpečení.

Postupujte podle Well-Architected Frameworku.

Návrh a implementace libovolné úlohy můžete vyhodnotit prostřednictvím různých objektivů. Pomocí architektury Well-Architected můžete vyhodnotit a sladit vaše rozhodnutí s principy návrhu v těchto pěti klíčových pilířích architektury:

Dodržováním těchto principů a vyhodnocením kompromisů mezi těmito pilíři architektury můžete vytvořit 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 informovat vaši volbu stylu architektury a zúžit možnosti technologií nebo hranice zabezpečení v souvislosti s vašimi konkrétními potřebami úloh.

Váš tým nebo organizace může mít jiné principy návrhu, jako je udržitelnost a etika, které můžete použít k vyhodnocení úloh.

Vysvětlení typických stylů architektury

Jakmile pochopíte organizační prostředí, ve kterých bude vaše aplikace existovat, a základ dobrého návrhu architektury na základě architektury Well-Architected Framework, musíte se rozhodnout, jaký typ architektury se má sestavit. Může se jednat o architekturu mikroslužeb, tradiční N-vrstvou aplikaci nebo řešení pro velké objemy dat. Tyto styly architektury jsou odlišné a navržené pro různé výsledky. Při vyhodnocování stylů architektury byste také měli vybrat modely úložiště dat, které budou řešit správu stavu.

Vyhodnoťte různé styly architektury a modely úložiště dat , abyste porozuměli výhodám a výzvám, které každá možnost představuje.

Úlohy v Well-Architected Frameworku

Článek Well-Architected Framework popisuje různé klasifikace nebo typy úloh. Články o klíčových úlohách, úlohách AI a strojovém učení nebo úlohách typu software jako služba najdete v článcích. Tyto články specifické pro úlohy používají pět základních pilířů architektury Well-Architected 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 a sítě. 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

Další informace o různých aspektech návrhu, včetně návrhu rozhraní API, automatického škálování, dělení dat a ukládání do mezipaměti, najdete v tématu Osvědčené postupy v cloudových aplikacích. Projděte si tyto aspekty 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á specifické obchodní požadavky, cíle a měření úspěšnosti. Tyto funkční a nefunkční požadavky byste měli rozložit do samostatných aktivit, které společně spolupracují, abyste dosáhli řešení, které splňuje vaše očekávání a očekávání vašich zákazníků. Tyto aktivity se obvykle řídí vzory, které zavedlo softwarové odvětví. Vzory návrhu softwaru jsou pojmenované a opakovatelné přístupy, které můžete použít pro zpracování nebo ukládání dat. Tyto vzory se osvědčily při řešení konkrétních problémů se známými kompromisy.

Katalog vzorů návrhu cloudu v Azure řeší konkrétní výzvy v distribuovaných systémech. Úlohy AI, které obsahují více autonomních agentů, najdete v tématu Vzory orchestrace agentů AI. Zahrnuje specializované koordinační přístupy, které doplňují tradiční vzory návrhu tím, že řeší jedinečné výzvy orchestrace inteligentních a autonomních komponent.

Rozhodování o informovaných technologiích

Po určení typu architektury, kterou chcete sestavit, a vzorů návrhu, které očekáváte použít, můžete zvolit hlavní technologické komponenty pro architekturu. Důležité jsou následující technologické volby:

Pravděpodobně budete provádět další technologické volby, ale výpočetní prostředky, 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 článků o nápadech řešení, ukázkových úlohách a referenčních architekturách. Tyto články obvykle uvádějí běžné součásti a důležité informace, které jsou v souladu s 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 tomu, co vytváříte, jsou dobrým výchozím bodem. Pokyny můžete přizpůsobit 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

Po výběru základní technologie a konzultace s referenčními architekturami si projděte dokumentaci a pokyny specifické pro služby ve vaší architektuře. Pro pokyny pro konkrétní služby použijte následující zdroje informací:

  • Well-Architected Framework – příručky pro služby: Well-Architected Framework poskytuje články o mnoha službách Azure. Články se týkají pěti pilířů architektury pro každou službu.

  • 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ů.

Pochází z jiného cloudu?

Pokud víte, jak navrhovat aplikace v jiném poskytovateli cloudu, platí řada stejných základů. Například styly architektury a vzory návrhu cloudu jsou koncepčně nezávislé na cloudu. Další informace najdete v následujících článcích s mapováním služeb a architekturou:

Další krok

  • styly architektury