Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Gäller för den här rekommendationen för checklista för prestandaeffektivitet i Azure Well-Architected Framework:
| PE:02 | Genomföra kapacitetsplanering. Kapacitetsplanering bör göras innan det finns förutsagda ändringar i användningsmönstren. Förutsagda ändringar omfattar säsongsvariationer, produktuppdateringar, marknadsföringskampanjer, särskilda händelser eller regeländringar. |
|---|
Den här guiden beskriver rekommendationerna för kapacitetsplanering. Kapacitetsplanering avser processen att fastställa vilka resurser som krävs för att uppnå arbetsbelastningens prestandamål. Det handlar om att uppskatta mängden databehandlingsresurser som processor, minne, lagring och nätverksbandbredd som behövs för att stödja arbetsbelastningens prestandakrav. Kapacitetsplanering hjälper till att undvika underetablering och säkerställer att arbetsbelastningen har tillräckligt med resurser för att hantera de förväntade arbetsbelastningskraven utan prestandaförsämring eller flaskhalsar. Det hjälper också till att förhindra överetablering och onödiga kostnader. Brist på kapacitetsplanering kan leda till prestandaproblem, resursflaskhalsar, ökade kostnader, ineffektiv allokering, skalbarhetsutmaningar och oförutsägbara arbetsbelastningsprestanda.
Definitioner
| Begrepp | Definition |
|---|---|
| Kapacitetsplanering | Processen att föra fram de resurser som arbetsbelastningen behöver för att uppnå sina mål. |
| Funktionskrav | De funktioner och möjligheter en arbetsbelastning måste ha för att uppfylla sitt avsedda syfte. |
| Tekniska krav | Koden och infrastrukturen som behövs för att uppfylla funktionskrav. |
| Trendanalys | Tidigare dataanalyser för att förutse framtida behov. |
Kapacitetsplanering är en framåtblickande process som involverar att fatta beslut baserat på förväntade arbetsbelastningskrav och mönster. Målet är att optimera arbetsbelastningens prestanda över både kontinuerliga och högsta belastningsscenarier. Genom att förstå förändringar i användningen, t.ex. säsongsskiften eller produktsläpp, kan du allokera resurser strategiskt, vilket förhindrar systempåfrestning under perioder med hög efterfrågan. Den proaktiva strategin minskar störningar och ökar prestandaeffektiviteten. Genom att analysera tidigare användningstrender och tillväxtdata kan du prognostisera kort- och långsiktiga behov. Du kan identifiera potentiella flaskhalsar och skalningsproblem, vilket säkerställer konsekvent och effektiv arbetsbelastningsprestanda.
Samla in kapacitetsdata
Insamling av arbetsbelastningsanvändningsdata innebär att samla in och analysera information om hur en arbetsbelastning använder resurser. Du bör samla in data om tidigare mönster för befintliga arbetsbelastningen och kontrollåtgärder för nya arbetsbelastningen. Den här processen hjälper till att översätta affärsmål till tekniska krav och är nödvändig för att kunna förutse kapacitet. Föreställ dig följande rekommendationer:
Förstå en befintlig arbetsbelastning
Att förstå en befintlig arbetsbelastning för kapacitetsplanering innebär att analysera tidigare data relaterade till hur arbetsbelastningen använder resurser. Den omfattar mått som resursutnyttjande, prestandainformation och arbetsbelastningsmönster. Den här förståelsen säkerställer effektiv resursallokering, omvandlar affärsmål till tekniska krav och hjälper till att identifiera potentiella flaskhalsar.
Förstå data: Granska tillgängliga tidigare data och förstå dess struktur, format och relevans för kapacitetsplanering. Granskningen kan innehålla resursutnyttjandemått, arbetsbelastningsmönster, prestandamått och andra relevanta datapunkter. Förstå affärsprocesserna och hur viktiga programmen är. Identifiera de högsta användningstiderna, användarbelastningen, transaktionsfrekvenser och andra relevanta mått.
Rensa och förbearbeta data: Förbered data för analys genom att ta bort eventuella inkonsekvenser, fel eller extremvärden. Att förbereda data kan innebära tekniker för datarensning som dataimputation, hantering av saknade värden eller normalisering.
Identifiera viktiga mått: Identifiera de mått som är relevanta för kapacitetsplanering. Mått kan vara CPU-användning, minnesanvändning, nätverksdataflöde och svarstider.
Identifiera flaskhalsar: Mät dataflödes- och svarstider för att identifiera de specifika komponenter i systemet som kan bli flaskhalsar när arbetsbelastningen växer. Begäranden per sekund och användning av databas-CPU kan vara bra indikatorer på kapacitet.
Visualisera data: Skapa visualiseringar, till exempel diagram eller diagram, för att få bättre insikter om historiska data. Visualiseringar kan hjälpa dig att identifiera mönster, trender och funktionssätt i data för att ge dig en bättre förståelse av arbetsbelastningens beteende.
Förstå en ny arbetsbelastning
En ny arbetsbelastning för kapacitetsplanering innebär att resurskraven för en framtida uppgift utan tidigare data. Det kan vara svårare att förutsäga framtida behov för en ny arbetsbelastning utan historiska data. Med den här processen kan du allokera resurser effektivt justera resursallokeringar med arbetsbelastningens mål när arbetsbelastningen introduceras. Föreställ dig följande rekommendationer:
Marknadsundersökning: Att genomföra marknadsundersökningar för att förstå efterfrågan på liknande produkter eller tjänster kan ge värdefulla insikter om den potentiella efterfrågan på en ny arbetsbelastning. Forskningen kan handla om att analysera marknadstrender, genomföra undersökningar eller studera konkurrenterbjudanden.
Expertbedömning: Indata från ämnesexperter eller yrkesverksamma som har erfarenhet inom branschen kan hjälpa dig att uppskatta efterfrågan på en ny arbetsbelastning. Deras expertis och insikter kan ge värdefulla indata för prognoserna.
Pilotprojekt eller prototyper: Mindre pilotprojekt eller prototyper kan hjälpa dig att samla in data och feedback i realtid. Du kan sedan använda dessa data för att informera kapacitetsplaneringsprocessen och justera den prognostiserade efterfrågan.
Externa datakällor: Externa datakällor som branschrapporter, marknadsundersökningar eller kundundersökningar kan ge ytterligare information för att minska behovet av en ny arbetsbelastning. Dessa källor kan erbjuda värdefulla insikter om kundpreferenser, marknadstrender och potentiella efterfrågedrivare.
Efterfrågeprognos
Efterfrågeprognos använder arbetsbelastningsdata för att förutse framtida behov av en tjänst eller produkt. Det är nödvändigt för kapacitetsplaneringen att säkerställa en effektiv resursallokering, förutse tillväxtmönster och förbereda för potentiella toppar i efterfrågan. När du förutser framtida efterfrågan använder du data för att få en känsla av framtida behov. Du använder statistisk analys, trendanalys eller prediktiva modelleringstekniker på de data du behöver för att förutse framtida behov. Dessa metoder tar hänsyn till tidigare eller förväntade mönster och förser dem med projekt i framtiden för att ta hänsyn till den förväntade arbetsbelastningen. Tänk på följande strategier för att förutse efterfrågan:
Ta hänsyn till olika scenarier
När du utför kapacitetsplanering måste du planera för olika scenarier som kan inträffa. Denna planering bör inkludera både förutsägbara tillväxtmönster och oväntade toppar i efterfrågan. Användningsmönster kan växa eller minska. De kan vara organiska (mer eller mindre användare) eller oorganiska (en händelse eller säkerhetsincident). Du måste genomföra kapacitetsplanering innan användningsändringar, vid viktiga tidpunkter:
- Design (förutsägelse)
- Regelbundna toppar (08:00 inloggningsrush)
- Starta (prognosvalidering)
- Affärsmodell förändring
- Förvärv och fusioner
- Marknadsföringspush
- Säsongsförändring
- Funktionsstart
- Periodiskt
Använd förutsägelsestekniker
Att prognostisera framtida efterfrågan på en tjänst eller produkt innebär att använda tekniker som statistisk analys, trendanalys och prediktiv modellering. Här är en översikt över hur du kan använda dessa tekniker:
Statistisk analys: Statistiska metoder kan hjälpa dig att upptäcka mönster och relationer inom historiska data. Du kan använda dessa mönster för att förutse framtida efterfrågan. Du kan använda tekniker som tidsserieanalyser, analyser av tidsserier och flyttande medelvärden för att identifiera trender, förfall och andra mönster i dina data.
Trendanalys: Trendanalys innebär att granska historisk data för att identifiera konsekventa mönster och extrapolera dessa mönster in i framtiden. Till exempel, om arbetsbelastningens efterfrågan ökade med 10 procent under det senaste året, kan du förutse en fortsatt trend.. När du analyserar historisk efterfrågedata över en tidsperiod kan du identifiera tillväxt- eller minskningstrender. Använd dessa trender som underlag för att förutse framtida efterfrågan. Trendanalys kan också identifiera effekterna av engångshändelser som orsakar snabba förändringar i trafiken (oorganiska). Till exempel kan funktionslanseringar konsekvent öka efterfrågan med 5 procent. Om du har fyra större lanseringar per år bör du planera för en tillväxt på 5 procent varje gång.
Prediktiv modellering: Prediktiv modellering är processen att bygga matematiska modeller som använder historiska data och andra relevanta variabler för att göra förutsägelser om framtida efterfrågan. Du kan använda tekniker som maskininlärningsalgoritm, neurala nätverk eller beslutsträd. Dessa modeller kan ta hänsyn till flera faktorer och variabler för att ge mer exakta prognoser.
Justera med arbetsbelastningens mål
Att anpassa prognoserna till arbetsbelastningens mål är att justera de olika kapacitetsmodellerna så att de uppfyller specifika mål och krav för en viss arbetsbelastning. Den här justeringen säkerställer att resurserna är tillräckligt etablerade, vilket förhindrar både underutnyttjande och potentiella överbelastningar av arbetsbelastningar. Om du till exempel vill stödja ett API för 1 miljon användare att ladda upp 1 MB filer på en sekund, men aktuella data visar långsamma skrivhastigheter, måste du justera systemet. Det är viktigt att prata med intressenterna för att se till att arbetsbelastningen uppfyller de krav som ställs. Se till att dina planer överensstämmer med löftena (SLA) från dina tjänsteleverantörer. Denna anpassning säkerställer att din kapacitet möter den förväntade efterfrågan och hjälper till att lokalisera områden i systemet som kan behöva ändras.
Bestäm resurskrav
Att fastställa resurskrav för kapacitetsplanering innebär att utvärdera de resurser som du behöver för att möta den prognostiserade efterfrågan. Om ett program till exempel räknar med en ökning på 50% användare under en kampanjkampanj kan det behöva allokera fler molninstanser eller justera dess parametrar för automatisk skalning för att hantera den ökade belastningen.
En arbetsbelastning kan ha många resurser, så det finns inget mått att observera för att fastställa resurskrav. Du måste mäta kapaciteten på resursnivån för att få meningsfulla resultat. Uppskatta den förväntade efterfrågan på dina resurser baserat på historiska data, marknadstrender och affärsprognoser. Fundera över antalet transaktioner, samtidiga användare eller andra relevanta mått.
Utifrån den prognostiserade efterfrågan beräknar du vilka resurser som behövs för att uppfylla den efterfrågan. Tänk på faktorer som serverkapacitet, nätverksbandbredd, lagringskapacitet och personal:
Serverkapacitet: Fastställa vilken serverkapacitet som krävs baserat på det uppskattade antalet samtidiga användare eller transaktioner. Överväg faktorer som krav på processor, minne och diskutrymme för att säkerställa att dina servrar kan hantera den förväntade arbetsbelastningen.
Bandbredd i nätverket: Utvärdera den bandbredd i nätverket som behövs för att kunna använda den förväntade trafiknivån. Du bör inkludera både inkommande och utgående dataöverföringshastigheter för att säkerställa en smidig och effektiv kommunikation mellan servrar och klienter.
Lagringskapacitet: Uppskatta mängden data som genererar eller bearbetar arbetsbelastningen under den prognostiserade efterfrågan. Tänk på faktorer som databasstorlek, fillagringskrav och eventuella andra datalagringsbehov som är specifika för ditt program.
Personal: Utvärdera de personalresurser som krävs för att hantera och underhålla infrastrukturen, hantera kundsupport, utföra systemunderhåll och säkerställa smidig drift. Ta hänsyn till faktorer som arbetsbelastningsdistribution, kompetensuppsättning och nödvändig expertis.
Förstå resursbegränsningar
Resurser i arbetsbelastningen har prestandabegränsningar. Prestandabegränsningar gäller för tjänster och SKU:er inom varje tjänst. Du måste förstå begränsningarna för resurserna i din arbetsbelastning och dela in begränsningarna i dina designbeslut. Du bör till exempel veta om resursbegränsningar kräver att du ändrar SKU:er eller ändrar resurser helt och hållet.
Du måste också identifiera gränser som kan nås. Den refererar till att fastställa de maximala tröskelvärdena eller gränserna för en arbetsbelastning. Dessa gränser gäller vanligtvis för infrastruktur (beräkning, minne, lagring, nätverk), program (samtidiga databasanslutningar, svarstider, tillgänglighet), tjänst (begäranden per sekund) och skalning. När kapacitetsplaneringen identifierar nåbara gränser måste du ändra arbetsbelastningen innan gränsen skapar ett prestandaproblem. Baslinjer för prestanda, kontinuerlig övervakning och testning är viktiga för att verifiera begränsningarna och lösningen.
Kompromisser: Felbedömd kapacitetsplanering kan leda till över- eller undertillförsel av resurser. Överetablering leder till högre kostnader. Underetablering kan resultera i dålig prestanda. Försök att hitta rätt balans.
Azure-stöd
Samla kapacitetsdata och prognostisera efterfrågan: Azure Monitor gör det möjligt att samla in och analysera telemetridata från dina program och infrastruktur. Programmet stöder övervakning av olika Azure-resurser, inklusive virtuella datorer, behållare och lagringskonton. Viktiga verktyg inkluderar Application Insights och Log Analytics. Genom att konfigurera datainsamling och definiera mått och loggar som du vill övervaka kan du samla in värdefulla arbetsbelastningsdata för analys. För nätverksövervakning kombinerar du Azure Monitor med Azure Network Watcher, Azure Monitor-nätverksinsikter och Azure ExpressRoute-övervakning.
Med Azure Monitor kan du analysera tidigare data och använda prognostekniker för att identifiera framtida arbetsbelastningstrender och kapacitetskrav. Du kan skapa prognoser som kan hjälpa dig med kapacitetsplaneringen. Dessa prognoser hjälper till att uppskatta serverkapacitet, nätverksbandbredd, lagringskapacitet och andra resursbehov genom att använda förväntade efterfrågemönster.
För komplexa analytiska arbetsbelastningar som omfattar stora historiska datauppsättningar möjliggör Log Analytics-sökjobb asynkron frågekörning av data över långsiktiga kvarhållningsperioder utan att påverka prestanda för realtidsövervakning. Sökjobb skapar dedikerade Analystabeller för resultat, vilket gör det möjligt att separera analytiska arbetsbelastningar från driftövervakning. Den här funktionen är särskilt värdefull för kapacitetsplaneringsaktiviteter som kräver djup historisk analys, till exempel trendanalys och prognostisering, samtidigt som optimala prestanda bibehålls för dagliga övervakningsåtgärder.
Fastställa resurskrav: Eftersom de tillhandahåller en mängd konfigurationer kan Azure-verktyg och -tjänster hjälpa dig att definiera tekniska krav. Du kan justera dina arbetsbelastningskrav med tillgängliga Azure-resurser och se till att välja rätt komponenter och inställningar som uppfyller dina funktionsbehov.
Förstå resursbegränsningar: Azure tillhandahåller dokumentation och resurser som hjälper dig att förstå prestandabegränsningarna för olika Azure-tjänster och SKU:er. Om du tar hänsyn till dessa begränsningar kan du fatta informerade designbeslut och optimera arbetsbelastningens arkitektur för prestanda och kostnadseffektivitet.
Azure tillhandahåller skalbarhetsalternativ som automatisk skalning, som automatiskt kan justera resurser baserat på efterfrågan på arbetsbelastningar. Du kan skala lodrätt genom att öka kapaciteten för en resurs med hjälp av en större storlek på virtuella datorer, eller så kan du skala vågrätt genom att lägga till nya instanser av en resurs. Azure-tjänster som har funktioner för automatisk skalning kan automatiskt skalas ut för att säkerställa kapacitet under arbetsbelastningstoppar och återgå till det normala när belastningen minskar. Det finns skalningsgränser inom din konfiguration och dina tjänster som du bör vara medveten om. Du kan läsa dokumentationen eller köra tester. Azure tillhandahåller verktyg som Azure Load Testing, som kan simulera belastning och olika användningsmönster som hjälper dig att samla in relevanta data om din arbetsbelastning.
Aktivera flödesloggar för virtuella nätverk mellan arbetsbelastningar för att samla in data om nätverksaktivitet. Använd trafikanalys för att analysera och utöka dessa loggar, vilket ger insyn i beteendet och prestandan för användarflöden. Genom att identifiera de viktigaste talarna, bandbredds hotspots och ineffektivitet för routning kan trafikanalys hjälpa till att optimera nätverksresursallokering och möjliggöra smartare kapacitetsplanering.
Relaterade länkar
Checklista för prestandaeffektivitet
Se den fullständiga uppsättningen rekommendationer.