Mikroslužby se staly oblíbeným stylem architektury pro vytváření cloudových aplikací, které jsou odolné, vysoce škálovatelné a umožňují nezávislé nasazení a rychlý rozvoj. Aby se z nich ale stalo víc než jenom módní slov, mikroslužby vyžadují jiný přístup k návrhu a sestavování aplikací.
V této sadě článků se podíváme, jak sestavit architekturu mikroslužeb v Azure. Témata:
- Výpočetní prostředky pro mikroslužby
- Komunikace mezi službami
- Návrh rozhraní API
- Brány rozhraní API
- Požadavky na data
- Způsoby návrhu
Požadavky
Před čtením těchto článků můžete začít následujícím:
- Úvod do architektur mikroslužeb Pochopte výhody i výzvy mikroslužeb a vhodnost použití tohoto stylu architektury.
- Použití analýzy domény k modelování mikroslužeb Seznamte se s přístupem k modelování mikroslužeb řízeným doménou.
Referenční implementace
K objasnění doporučených postupů pro architekturu mikroslužeb jsme vytvořili referenční implementaci, kterou označujeme jako aplikace pro doručování pomocí dronů. Tato implementace se spouští v Kubernetes pomocí Azure Kubernetes Service (AKS). Tuto referenční implementaci najdete na GitHubu.
Stáhněte si soubor aplikace Visio s touto architekturou.
Scénář
Fabrikam, Inc. zavádí službu pro doručování pomocí dronů. Společnost spravuje firemní vozový park dronů. Firmy se registrují v této službě a uživatelé si můžou vyžádat, aby dron vyzvedl zboží k doručení. Když si zákazník naplánuje vyzvednutí, back-endový systém přiřadí dron a informuje uživatele o předpokládaném času doručení. V průběhu doručování může zákazník sledovat polohu dronu s průběžně aktualizovaným odhadovaným časem doručení.
Toto řešení je ideální pro letecký a letecký průmysl.
Tento scénář zahrnuje poměrně složitou doménu. Mezi problémy obchodního charakteru patří plánování dronů, sledování balíčků, správa uživatelských účtů a ukládání a analýza historických dat. Fabrikam navíc chce rychle vstoupit na trh a potom rychle iterovat a přidávat nové funkce a možnosti. Aplikace se musí provozovat v cloudovém měřítku, s vysokou cílovou úrovní služeb (SLO). Fabrikam také očekává, různé části systému budou mít velmi odlišné požadavky na úložiště dat a dotazování. Všechny tyto aspekty vedly společnost Fabrikam k tomu, aby pro aplikaci pro doručování pomocí dronů zvolila architekturu mikroslužeb.
Poznámka:
Pomoc při rozhodování mezi architekturou mikroslužeb a ostatními typy architektur vám poskytne příručka Aplikační architektura v Azure.
Naše referenční implementace používá Kubernetes se službou Azure Kubernetes Service (AKS). Řada rozhodnutí o architektuře na vysoké úrovni a výzvy se však uplatní u jakéhokoli orchestrátoru kontejnerů.