Vzory návrhu cloudu, které podporují optimalizaci nákladů

Při návrhu architektur úloh byste měli používat oborové vzory, které řeší běžné výzvy. Vzory vám můžou pomoct s úmyslným kompromisem v rámci úloh a optimalizovat je pro požadovaný výsledek. Můžou také pomoct zmírnit rizika vyplývající z konkrétních problémů, které můžou mít vliv na spolehlivost, zabezpečení, výkon a provoz. Pokud se nezmírní, rizika nakonec zvýší náklady. Tyto vzory jsou založené na reálných zkušenostech, jsou navržené pro cloudové škálování a provozní modely a jsou ze své podstaty nezávislé na dodavatelích. Použití dobře známých vzorů jako způsobu standardizace návrhu úloh je součástí efektivity provozu.

Mnoho vzorů návrhu přímo podporuje jeden nebo více pilířů architektury. Vzory návrhu, které podporují pilíř Optimalizace nákladů, jsou v souladu s implementací příznivých modelů fakturace, snížením nadměrného zřizování, změnou dimenzí škálování a maximalizací hodnoty během migrací.

Vzory návrhu pro optimalizaci nákladů

Následující tabulka shrnuje vzory návrhu cloudu, které podporují cíle optimalizace nákladů.

Vzor Souhrn
Kontrola deklarace identity Odděluje data od toku zasílání zpráv a poskytuje způsob, jak samostatně načíst data související se zprávou. Systémy zasílání zpráv často omezují velikost zpráv a zvýšená omezení velikosti jsou často prémiovou funkcí. Zmenšení velikosti těla zpráv vám může umožnit používat levnější řešení zasílání zpráv.
Competing Consumers Použije distribuované a souběžné zpracování pro efektivní zpracování položek ve frontě. Tento model vám může pomoct optimalizovat náklady tím, že povolí škálování založené na hloubce fronty až na nulu, když je fronta prázdná. Může také optimalizovat náklady tím, že vám umožní omezit maximální počet souběžných instancí příjemců.
Compute Resource Consolidation Optimalizuje a konsoliduje výpočetní prostředky zvýšením hustoty. Tento model kombinuje více aplikací nebo komponent úloh ve sdílené infrastruktuře. Tím se maximalizuje využití výpočetních prostředků tím, že se vyhnete nevyužité zřízené kapacitě prostřednictvím agregace komponent nebo dokonce celých úloh ve fondu infrastruktury. Běžným příkladem jsou orchestrátory kontejnerů.
Gateway Offloading Přesměruje zpracování požadavků na zařízení brány před předáním požadavku do back-endového uzlu a po jeho předání do back-endového uzlu. Přidání brány pro přesměrování zátěže do procesu žádosti vám umožní přesměrovat náklady z prostředků, které by byly vynaloženy na jednotlivé uzly, do implementace brány. Náklady v modelu centralizovaného zpracování jsou často nižší než náklady distribuovaného modelu.
Most pro zasílání zpráv Poskytuje zprostředkovatele umožňující komunikaci mezi systémy zasílání zpráv, které jsou jinak nekompatibilní z důvodu protokolu nebo formátu. Tento zprostředkovatel může prodloužit životnost vašeho stávajícího systému a zároveň umožnit interoperabilitu se systémy, které používají jinou technologii zasílání zpráv nebo událostí.
Vydavatel/odběratel Oddělí komponenty architektury nahrazením přímé komunikace mezi klientem a službami za komunikaci pomocí zprostředkujícího zprostředkovatele zpráv nebo sběrnice událostí. Tento návrh může ve vaší architektuře umožnit přístup řízený událostmi, který dobře spolupracuje s fakturací na základě spotřeby, aby se zabránilo nadměrnému zřízení.
Queue-Based Load Leveling Řídí úroveň příchozích požadavků nebo úkolů tak, že je uloží do vyrovnávací paměti ve frontě a umožní procesoru fronty, aby je zpracovával řízeným tempem. Vzhledem k tomu, že zpracování zatížení je oddělené od příjmu požadavků nebo úkolů, můžete tento přístup použít ke snížení potřeby nadměrného zřízení prostředků pro zpracování zatížení ve špičce.
Sharding Směruje zatížení do konkrétního logického cíle pro zpracování konkrétního požadavku a umožňuje optimalizaci kolokace. Systém, který implementuje horizontální oddíly, často těží z použití více instancí levnějších výpočetních prostředků nebo prostředků úložiště, a ne z jednoho dražšího prostředku. V mnoha případech vám tato konfigurace může ušetřit peníze.
Static Content Hosting Optimalizuje doručování statického obsahu klientům úloh pomocí hostitelské platformy, která je pro tento účel navržená. Hostitelé dynamických aplikací jsou obvykle dražší než statici, protože dynamickí hostitelé můžou spouštět kódovanou obchodní logiku. Použití aplikační platformy k doručování statického obsahu není nákladově efektivní.
Strangler Fig Poskytuje přístup k systematickému nahrazování komponent spuštěného systému novými komponentami, často během migrace nebo modernizace systému. Cílem tohoto přístupu je maximalizovat využití stávajících investic v aktuálně spuštěném systému a současně postupně modernizovat. Umožňuje provádět náhrady s vysokou návratností před nahrazením s nízkou návratností.
Omezování Omezuje rychlost nebo propustnost příchozích požadavků na prostředek nebo komponentu. Limity můžou informovat o modelování nákladů a mohou být dokonce přímo svázány s obchodním modelem vaší aplikace. Jsou také jasné horní hranice využití, které se dají zohlednit při změně velikosti prostředků.
Valet Key Udělí přístup k prostředku s omezeným zabezpečením bez použití zprostředkujícího prostředku k proxy přístupu. Tento návrh přetěžuje zpracování jako výhradní vztah mezi klientem a prostředkem bez přidání komponenty, která bude přímo zpracovávat všechny požadavky klienta. Výhoda je nejdramatičtější, když jsou požadavky klientů časté nebo dostatečně velké na to, aby vyžadovaly významné prostředky proxy serveru.

Další kroky

Projděte si vzory návrhu cloudu, které podporují další pilíře architektury Azure Well-Architected: