Molndesignmönster som stöder kostnadsoptimering

När du utformar arbetsbelastningsarkitekturer bör du använda branschmönster som hanterar vanliga utmaningar. Mönster kan hjälpa dig att göra avsiktliga kompromisser inom arbetsbelastningar och optimera för önskat resultat. De kan också bidra till att minska risker som härrör från specifika problem, vilket kan påverka tillförlitlighet, säkerhet, prestanda och åtgärder. Om de inte minimeras kommer riskerna så småningom att öka kostnaderna. Dessa mönster backas upp av verkliga upplevelser, är utformade för molnskala och driftsmodeller och är i sig leverantörsoberoende. Att använda välkända mönster som ett sätt att standardisera din arbetsbelastningsdesign är en komponent i driftseffektivitet.

Många designmönster har direkt stöd för en eller flera arkitekturpelare. Designmönster som stöder kostnadsoptimeringspelare överensstämmer med implementering av gynnsamma faktureringsmodeller, minskar överetablering, ändrar skalningsdimensioner och maximerar värdet under migreringar.

Designmönster för kostnadsoptimering

I följande tabell sammanfattas molndesignmönster som stöder målen för kostnadsoptimering.

Mönster Sammanfattning
Anspråkskontroll Separerar data från meddelandeflödet, vilket ger ett sätt att separat hämta data som är relaterade till ett meddelande. Meddelandesystem begränsar ofta meddelandestorleken och ökade storleksgränser är ofta en premiumfunktion. Om du minskar storleken på meddelandeorganen kan du använda en billigare meddelandelösning.
Konkurrerande konsumenter Tillämpar distribuerad och samtidig bearbetning för att effektivt hantera objekt i en kö. Det här mönstret kan hjälpa dig att optimera kostnaderna genom att aktivera skalning som baseras på ködjup, ned till noll när kön är tom. Det kan också optimera kostnaderna genom att göra det möjligt att begränsa det maximala antalet samtidiga konsumentinstanser.
Konsolidering av beräkningsresurser Optimerar och konsoliderar beräkningsresurser genom att öka densiteten. Det här mönstret kombinerar flera program eller komponenter i en arbetsbelastning i en delad infrastruktur. Detta maximerar användningen av beräkningsresurser genom att undvika outnyttjad etablerad kapacitet via sammansättning av komponenter eller till och med hela arbetsbelastningar i en poolinfrastruktur. Containerorkestrerare är ett vanligt exempel.
Gateway-avlastning Avlastning av bearbetning av begäran till en gatewayenhet före och efter vidarebefordran av begäran till en serverdelsnod. Genom att lägga till en gateway för avlastning i begärandeprocessen kan du omdirigera kostnader från resurser som skulle spenderas per nod till gatewayimplementeringen. Kostnaderna i den centraliserade bearbetningsmodellen är ofta lägre än för den distribuerade modellen.
Meddelandebrygga Tillhandahåller en mellanhand för att aktivera kommunikation mellan meddelandesystem som annars är inkompatibla på grund av protokoll eller format. Den här mellanhanden kan öka livslängden för ditt befintliga system samtidigt som den tillåter samverkan med system som använder en annan meddelande- eller händelseteknik.
Utgivare/prenumerant Frikopplar komponenter i en arkitektur genom att ersätta direkt kommunikation från klient till tjänst eller från klient till tjänst med kommunikation med hjälp av en mellanliggande meddelandekoordinator eller händelsebuss. Den här designen kan aktivera en händelsedriven metod i din arkitektur, som passar bra med förbrukningsbaserad fakturering för att undvika överetablering.
Köbaserad belastningsutjämning Styr nivån för inkommande begäranden eller uppgifter genom att buffrar dem i en kö och låter köprocessorn hantera dem i kontrollerad takt. Eftersom belastningsbearbetningen är frikopplad från begäran eller uppgiftsintaget kan du använda den här metoden för att minska behovet av att överetablera resurser för att hantera hög belastning.
Horisontell partitionering Dirigerar inläsningen till ett specifikt logiskt mål för att hantera den specifika begäran, vilket aktiverar samlokalisering för optimering. Ett system som implementerar shards drar ofta nytta av att använda flera instanser av billigare beräknings- eller lagringsresurser i stället för en enda dyrare resurs. I många fall kan den här konfigurationen spara pengar.
Värddator för statiskt innehåll Optimerar leveransen av statiskt innehåll till arbetsbelastningsklienter med hjälp av en värdplattform som är utformad för detta ändamål. Dynamiska programvärdar är vanligtvis dyrare än statiska värdar eftersom dynamiska värdar kan köra din kodade affärslogik. Det är inte kostnadseffektivt att använda en programplattform för att leverera statiskt innehåll.
Strangler-figur Tillhandahåller en metod för att systematiskt ersätta komponenterna i ett system som körs med nya komponenter, ofta under en migrering eller modernisering av systemet. Målet med den här metoden är att maximera användningen av befintliga investeringar i det system som körs och samtidigt modernisera inkrementellt. Det gör att du kan utföra utbyten med hög ROI före ersättningar med låg ROI.
Begränsning Begränsar hastigheten eller dataflödet för inkommande begäranden till en resurs eller komponent. Gränserna kan ligga till grund för kostnadsmodellering och kan till och med vara direkt knutna till ditt programs affärsmodell. De lägger också tydliga övre gränser på användningen, som kan räknas in i resursstorleken.
Valet-nyckel Ger säkerhetsbegränsad åtkomst till en resurs utan att använda en mellanliggande resurs för att proxy-åtkomsten. Den här designen avlastar bearbetningen som en exklusiv relation mellan klienten och resursen utan att lägga till en komponent för att hantera alla klientbegäranden direkt. Fördelen är mest dramatisk när klientbegäranden är tillräckligt frekventa eller stora för att kräva betydande proxyresurser.

Nästa steg

Granska de molndesignmönster som stöder de andra Grundpelarna i Azure Well-Architected Framework: