Upravit

Sdílet prostřednictvím


Přístupy architektury pro víceklientské řešení

Azure

Existuje mnoho různých způsobů, jak v Azure navrhovat a vytvářet víceklientová řešení. V jednom extrémním případě můžete sdílet všechny prostředky ve vašem řešení mezi všemi tenanty. Na druhé extrémní úrovni můžete nasadit izolované prostředky pro každého tenanta. Může se zdát jednoduché nasadit samostatné prostředky pro každého tenanta a může fungovat pro malý počet tenantů. Obvykle ale neposkytuje nákladovou efektivitu a může být obtížné spravovat vaše prostředky. Existují také různé přístupy, které se hodí mezi těmito extrémními hodnotami a všechny vyžadují kompromisy mezi škálováním, izolací, nákladovou efektivitou, výkonem, složitostí implementace a možností správy.

V této části probereme hlavní kategorie služeb Azure, které tvoří řešení, včetně výpočetních prostředků, úložiště a dat, sítí, nasazení, identity, zasílání zpráv, umělé inteligence a strojového učení a IoT. Pro každou kategorii uvádíme klíčové vzory a přístupy, které můžete zvážit při navrhování víceklientského řešení, a některé antipatterny, kterým se chcete vyhnout.

Model razítka nasazení

Model Razítka nasazení se často používá ve víceklientských řešeních. Zahrnuje nasazení vyhrazené infrastruktury pro tenanta nebo pro skupinu tenantů. Jedno razítko může sloužit více tenantům nebo může být vyhrazené pro jednoho tenanta.

Diagram znázorňující ukázkovou implementaci modelu razítka nasazení V tomto scénáři má každý tenant vlastní razítko obsahující databázi.

Když používáte razítka s jedním tenantem, vzor razítka nasazení je obvykle jednoduchý k implementaci, protože každé razítko pravděpodobně nebude vědět o žádné jiné, takže do aplikační vrstvy není potřeba integrovat logiku nebo funkce s více tenanty. Pokud má každý tenant vlastní vyhrazené razítko, tento model poskytuje nejvyšší stupeň izolace a snižuje problém hlučného souseda. Poskytuje také možnost konfigurace nebo přizpůsobení tenantů podle vlastních požadavků, jako je umístění v konkrétní geopolitické oblasti nebo konkrétní požadavky na vysokou dostupnost.

Při použití víceklientských razítek je potřeba zvážit další vzory pro správu víceklientské architektury v rámci razítka a problém s hlučnou sousedkou se stále může použít. Pomocí vzoru Razítka nasazení ale můžete i nadále škálovat podle toho, jak vaše řešení roste.

Největší problém se vzorem Razítka nasazení, kdy se používá k poskytování jednoho tenanta, je obvykle náklady na infrastrukturu. Každé razítko musí mít vlastní samostatnou sadu infrastruktury a infrastruktura se nesdílí s ostatními tenanty. Musíte také zajistit, aby prostředky nasazené pro kolek byly dostatečné, aby splňovaly zatížení úlohy daného tenanta ve špičce. Ujistěte se, že cenový model vyrovnává náklady na nasazení infrastruktury tenanta.

Razítka s jedním tenantem často dobře fungují, když máte malý počet tenantů. S rostoucím počtem tenantů je možné, ale stále obtížnější spravovat flotilu kolek s jedním tenantem (jako příklad si můžete prohlédnout tuto případovou studii). Model Razítka nasazení můžete použít také k vytvoření víceklientských kolků, které můžou poskytovat výhody pro sdílení prostředků a nákladů.

Pokud chcete implementovat model razítka nasazení, je důležité používat přístupy k automatizovanému nasazení. V závislosti na strategii nasazení můžete zvážit správu razítek v kanálech nasazení pomocí deklarativní infrastruktury, jako je například soubory Bicep nebo šablony Terraformu. Případně můžete zvážit vytvoření vlastního kódu pro nasazení a správu každého razítka, například pomocí sad Azure SDK.

Zamýšlená cílová skupina

Články v této části jsou užitečné pro architekty řešení a vedoucí vývojáře víceklientských aplikací, včetně nezávislých dodavatelů softwaru (ISV) a startupů, kteří vyvíjejí řešení SaaS. Většina pokynů v této části je obecná a vztahuje se na více služeb Azure v rámci kategorie.

Další kroky

Než si prohlédnete pokyny ke konkrétním kategoriím služeb Azure, doporučujeme zkontrolovat přístupy pro organizaci prostředků ve víceklientských řešeních .