Anbefalinger for ytelsesplanlegging
Gjelder denne Power Platform Well-Architected-sjekklisteanbefalingen for ytelseseffektiviteten:
PE:02 | Foreta ytelsesplanlegging. Ytelsesplanlegging skal gjøres før det finnes anslåtte endringer i bruksmønstre. Anslåtte endringer omfatter sesongvariasjoner, produktoppdateringer, markedsføringskampanjer, spesielle hendelser eller forskriftsendringer. |
---|
Denne veiledningen beskriver anbefalingene for ytelses- og kapasitetsplanlegging. Ytelse er ikke noe som bare skjer. Du må foreta planlegging for å oppnå den, akkurat som alle andre krav. Kapasitetsplanlegging henviser til fremgangsmåten for å fastsette ressursene som kreves for å oppfylle ytelsesmålene for arbeidsbelastningen. Det omfatter beregning av mengden ressurser som trengs for å støtte ytelseskravene for arbeidsbelastningen, for eksempel lagringsplass, gjennomstrømming og nettverksbåndbredde. Kapasitetsplanlegging sikrer at arbeidsbelastningen har nok ressurser til å håndtere de forventede behovene i arbeidsbelastningen uten at ytelsen reduseres eller det oppstår flaskehalser. Den bidrar også til å forhindre klargjøring av for mange ressurser og unødvendige kostnader. Manglende ytelses- og kapasitetsplanlegging kan føre til ytelsesproblemer, ressursflaskehalser, økte kostnader, ineffektiv tildeling, skalerbarhetsproblemer og uforutsigbar arbeidsbelastningsytelse.
Definisjoner
Term | Definisjon |
---|---|
Kapasitetsplanlegging | Fremgangsmåten for å forutsi ressursene en arbeidsbelastning trenger for å kunne nå ytelsesmålene. |
Funksjonelle krav | Funksjonene en arbeidsbelastning må ha for å kunne oppfylle hensikten med den. |
Tekniske krav | Koden og infrastrukturen som trengs for å oppfylle funksjonelle krav. |
Trendanalyse | Historisk dataanalyse for å beregne fremtidig behov. |
Viktige utformingsstrategier
Kapasitetsplanlegging er en fremtidsrettet fremgangsmåte som omfatter beslutningstaking basert på forventede behov og mønstre i arbeidsbelastningen. Målet er å optimalisere arbeidsbelastningsytelsen på tvers av scenarioer med jevn belastning og toppbelastning. Når du forstår endringer i bruk, for eksempel sesongmessige forskyvninger eller produktutgivelser, kan du tildele ressurser strategisk og unngå at systemet sliter i perioder med stor etterspørsel. Denne proaktive strategien reduserer avbrudd og forbedrer ytelseseffektiviteten. Når du analyserer tidligere brukstrender og vekstdata, kan du forutsi behov på kort og lang sikt. Du kan sette fingeren på potensielle flaskehalser og skaleringsproblemer, slik at du får ensartet og effektiv arbeidsbelastningsytelse.
Planlegg for ytelse
Utform arbeidsbelastningen med tanke på ytelse for å minimere refaktorering etter at arbeidsbelastningen kjører. Vurder kravene for arbeidsbelastning når det gjelder ytelse. Ytelseshensyn påvirker mange aspekter ved arbeidsbelastningen:
Datastrategi: Har du eksisterende data og datalagre du må koble til? Hvor mye data må du lagre? Påvirker datamengden hvor raskt brukerne får tilgang til dataene? Hvordan får brukerne tilgang til dataene?
Integreringsstrategi: Kan du foreta sanntidsintegreringer uten å gjøre systemet tregere? Kan du foreta satsvise integreringer innen en bestemt tid? Hvor er dataene? Trenger du en strategi for lokal datagateway?
Samtalevolumer: Når du bygger en agent, er det viktig å forstå målvolumet for meldinger eller samtaler og deres forventede vekst. Validerer forventningene dine målarkitekturen? Hva med skala?
Datamodellering: Må du forenkle datastrukturen for å oppnå raskere spørringer?
Sikkerhetsmodellering: Fungerer sikkerhetsreglene godt med mange brukere og mye data? Finnes det flaskehalser?
Miljøstrategi: Har du et testmiljø for ytelsestesting? Ligner det på produksjonsmiljøet? Har du budsjettert for ytelsestesting?
Utvikling: Følger utviklerne anbefalte fremgangsmåter for ytelse? Oppfyller de bestemte ytelsesmål? Vet brukerne hva som er og ikke er mulig?
Utforming av og tilnærming til testing: Hvordan måler du ytelse? Hva er godt nok, og hva er ikke godt nok? Foretar du testing med realistiske scenarioer og data? Tar du hensyn til nåværende og fremtidige behov i testingen?
Brukergodkjenning og -innføring: Hvordan sporer du ytelse? Er brukernes forventninger realistiske?
Planlegg ressursene
Ytelse koster tid, penger, arbeid og personer. Tildel ressurser fornuftig fra starten av prosjektet. Utviklere trenger for eksempel kanskje ekstra tid til å finne effektive måter å implementere forretningslogikk og optimalisere kode på. Du trenger også et testmiljø og et team som kan foreta ytelsestesting.
Ytelse er ikke en engangsaktivitet. Etter hvert som bruken av arbeidsbelastningen endres og plattformen utvikles, må du gå tilbake til koden og fortsette å finne måter å optimalisere ytelsen på.
Planlegg dataoverføringer og -integreringer
Når du overfører data fra et tidligere system, planlegger du overføringen nøye. Her er noen tips som kan hjelpe deg å unngå problemer:
Forstå forretningskravene for dataene du overfører. Ikke overfør mer data enn det brukerne trenger. Du trenger for eksempel sannsynligvis ikke å importere ti år gamle kundeemner til salgssystemet.
Vurder når og hvor ofte integreringene kjører. Unngå å kjøre ressurskrevende prosesser når brukere samhandler med systemet. Planlegg å utføre krevende prosesser i perioder med mindre trafikk, eller bruk asynkron behandling.
Vær oppmerksom på plattformbegrensninger og anbefalte fremgangsmåter når du utformer integreringene.
Samle inn ytelsesdata
Innsamling av data om arbeidsbelastningsbruk innebærer innsamling og analyse av informasjon om hvordan en arbeidsbelastning bruker ressurser, og ytelsen til den. Du bør samle inn data om historiske mønstre for eksisterende arbeidsbelastninger og prediktive tiltak for nye arbeidsbelastninger. Denne fremgangsmåten bidrar til oversetting av forretningsmål til tekniske krav og er avgjørende for å kunne beregne kapasitet. Vurder anbefalingene nedenfor.
Forstå en eksisterende arbeidsbelastning
Forståelse av en eksisterende arbeidsbelastning for kapasitetsplanlegging omfatter analyse av historiske data relatert til hvordan arbeidsbelastningen bruker ressurser. Den omfatter måledata som ressursbruk, ytelsesdata og arbeidsbelastningsmønstre. Denne forståelsen sikrer effektiv ressurstildeling, oversetter forretningsmål til tekniske krav og hjelper deg å finne potensielle flaskehalser.
Forstå dataene: Se gjennom tilgjengelige historiske data og forstå strukturen og formatet til dem samt hvordan de er relevante for kapasitetsplanlegging. Gjennomgangen kan omfatte måledata for ressursbruk, arbeidsbelastningsmønstre, ytelsesmåledata og andre relevante datapunkter. Forstå forretningsprosessene og kritikaliteten til programmene. Finn tidspunktene med mest bruk, brukerbelastning, transaksjonsrater og andre relevante måledata.
Rydd opp og forhåndsbehandle dataene på nytt: Klargjør dataene for analyse ved å fjerne eventuelle inkonsekvenser, feil eller utliggere. Klargjøring av dataene kan omfatte datarensingsteknikker som dataerstatting, håndteringen av manglende verdier, eller normalisering.
Identifiser viktige måledata: Finn måledataene som er relevante for kapasitetsplanlegging. Måledata kan omfatte transaksjonsmengde, nettverksgjennomstrømming og svartider.
Identifiserflaskehalser: Mål gjennomstrømming og svartider for å identifisere de spesifikke komponentene i systemet som kan bli flaskehalser etter hvert som arbeidsbelastningen vokser. Bruk funksjoner for prosessutvinningsanalyse som etterbehandling og årsaksanalyse til å finne flaskehalser i ende-til-ende-prosessen.
Visualiserdataene: Lag visualiseringer, for eksempel diagrammer eller tegninger, for å få bedre innsikt i historiske data. Visualiseringer kan hjelpe deg å identifisere mønstre, trender og avvik i data for å gi deg en klarere forståelse av funksjonaliteten til arbeidsbelastningen. Bruk prosessutvinningsverktøy til å visualisere dataene med et prosesskart, slik at du kan foreta en grundig analyse av prosessen.
Forstå en ny arbeidsbelastning
Forståelse av en ny arbeidsbelastning for kapasitetsplanlegging henviser til forutsigelsen av ressurskravene til en fremtidig oppgave uten historiske data. Det kan bli vanskelig å forutsi de fremtidige behovene for en ny arbeidsbelastning uten historiske data. Denne fremgangsmåten sikrer at du tildeler ressurser effektivt, og justerer tildelinger etter arbeidsbelastningsmål når arbeidsbelastningen innføres.
Vurder følgende anbefalinger:
Brukerundersøkelser: Når du foretar brukerundersøkelser for å forstå hvordan brukere håndterer den nåværende arbeidsbelastningen, kan du få verdifull innsikt i det potensielle behovet for en ny arbeidsbelastning. Undersøkelsen kan omfatte brukerintervjuer, undersøkelser eller observasjon av en bruker som utfører den eksisterende arbeidsbelastningen.
Ekspertvurdering: Innspill fra eksperter eller fagpersoner som har erfaring i bransjen, kan hjelpe deg å beregne behovet for en ny arbeidsbelastning. Ekspertisen og innsikten deres kan omfatte verdifulle inndata for prognoser.
Forsøksprosjekter eller prototyper: Forsøksprosjekter eller prototyper i liten skala kan hjelpe deg å samle inn data og tilbakemelding i sanntid. Du kan deretter bruke disse dataene i kapasitetsplanleggingen og justere det anslåtte behovet.
Eksterne datakilder: Eksterne datakilder, for eksempel bransjerapporter, markedsundersøkelser eller kundeundersøkelser, kan gi tilleggsinformasjon du kan bruke i beregningen av behovet for en ny arbeidsbelastning. Disse kildene kan gi verdifull innsikt i kundepreferanser, markedstrender og potensielle drivkrefter bak behov.
Anslå behov
Behovsprognose omfatter bruk av arbeidsbelastningsdata for å forutsi fremtidige behov for en tjeneste eller et produkt. Det er avgjørende for kapasitetsplanlegging å sikre effektiv ressurstildeling, foregripe vekstmønstre og være forberedt på potensielle økninger i behov. Når du anslår fremtidig behov, bruker du data til å få en oppfatning av fremtidige behov. Du bruker statistisk analyse, trendanalyse eller prediktiv modellering på dataene du har, for å beregne fremtidig behov. Disse metodene tar hensyn til historiske eller forventede mønstre, og prosjekterer dem inn i fremtiden for å beregne forventet arbeidsbelastningsbehov. Vurder strategiene nedenfor for å beregne behov.
Gjør rede for ulike scenarioer
Du må planlegge for ulike scenarioer som kan oppstå, som en del av ytelsesplanleggingen. Denne planleggingen skal omfatte både forutsigbare vekstmønstre og uventede økninger i behov. Bruksmønstre kan vokse eller krympe. De kan være organiske (flere eller færre brukere) eller uorganiske (en hendelse eller sikkerhetshendelse). Du må foreta planlegging før bruken endres, på viktige tidspunkter:
- Utforming (prediksjon)
- Vanlige plutselige økninger (påloggingsrush kl. 08:00)
- Lansering (prediksjonsvalidering)
- Endring av forretningsmodell
- Oppkjøp eller fusjon
- Markedsføringskampanje
- Sesongendring
- Funksjonslansering
- Periodisk
Bruk prediksjonsteknikker
Beregning av fremtidig behov for en tjeneste eller et produkt omfatter bruk av teknikker som statistisk analyse, trendanalyse og prediktiv modellering.
Her har en oversikt over hvordan du kan bruke disse teknikkene:
Statistisk analyse: Statistiske metoder kan bidra til å avdekke mønstre og relasjoner i historiske data. Du kan bruke disse mønstrene til å beregne fremtidig behov. Du kan bruke teknikker som tidsserieanalyse, regresjonsanalyse og glidende gjennomsnitt til å identifisere trender, sesongvariasjoner og andre mønstre i dataene.
Trendanalyse: Dette omfatter undersøkelse av historiske data for å identifisere konsekvente mønstre og ekstrapolere disse mønstrene inn i fremtiden. Hvis arbeidsbelastningsbehovet for eksempel økte med 10 prosent i løpet av forrige år, kan du forutsi en fortsettelse av denne trenden. Når du analyserer historiske behovsdata over en tidsperiode, kan du identifisere vekst- eller reduksjonstrender. Bruk disse trendene som et grunnlag for prognoser for fremtidig behov. Trendanalyse kan også identifisere virkningen av engangshendelser som fører til raske omslag i trafikk (uorganisk). Funksjonsutgivelser kan for eksempel konsekvent øke behovet med 5 prosent. Hvis du har fire store utgivelser i året, bør du planlegge 5 prosent vekst hver gang.
Prediktiv modellering: Prediktiv modellering er fremgangsmåten for utarbeide matematiske modeller som bruker historiske data og andre relevante variabler til å lage prediksjoner om fremtidig behov. Du kan bruke teknikker som maskinlæringsalgoritmer, nevrale nettverk eller beslutningstrær. Disse modellene kan ta hensyn til flere faktorer og variabler for å gi mer nøyaktige prognoser.
Juster prognoser etter arbeidsbelastningsmål
Justering av prognoser etter arbeidsbelastningsmål omfatter justering av prediktive kapasitetsmodeller for å sikre at de oppfyller de bestemte målene og kravene for en gitt arbeidsbelastning. Denne justering sikrer at ressursene er tilstrekkelige klargjort, slik at du unngår både at arbeidsbelastningen ikke brukes nok, eller at den brukes for mye. Hvis du for eksempel har som mål å støtte en integrering med en million oppdateringer hver natt, men gjeldende data viser langsomme oppdateringshastigheter, må du justere systemet. Det er avgjørende å snakke med interessenter for å forstå kravene i arbeidsbelastningen. Pass på at planene dine er i tråd med løftene (serviceavtalene) til tjenesteleverandørene. Denne justering sikrer at kapasiteten oppfyller forventet behov, og gjør det enklere å sette fingeren på områder i systemet som kanskje må endres.
Fastsett ressurskrav
En arbeidsbelastning kan ha mange ressurser, så det finnes ingen enkeltmåleverdi du kan se på for å fastsette ressurskrav. Du må måle kapasiteten på ressursnivået for å få meningsfylte resultater. Beregn forventet behov for ressursene basert på historiske data, markedstrender og forretningsprojeksjoner. Ta hensyn til antall transaksjoner, samtidige brukere eller andre relevante måledata.
Bruk det beregnede behovet til å beregne ressursene som trengs for å oppfylle dette behovet. Ta hensyn til faktorer som API-forespørselskapasitet, nettverksbåndbredde, lagringskapasitet og ansatte:
Nettverksbåndbredde: Evaluer nettverksbåndbredden du trenger for å kunne støtte det forventede trafikknivået. Du bør ta med både innkommende og utgående dataoverføringshastigheter for å sikre problemfri og effektiv kommunikasjon mellom servere og klienter.
Lagringskapasitet: Beregn mengden data som arbeidsbelastningen genererer eller behandler i løpet av det beregnede behovet. Vurder faktorer som databasestørrelse, krav til fillagring og eventuelle andre datalagringsbehov som spesifikt gjelder for programmet.
API-forespørsler: Evaluer forbruket av API-forespørsler mot tilgjengelig kapasitet og grensene for tjenestebeskyttelse. Ta hensyn til faktorer som innledende lasting av data og potensielle plutselige økninger i bruk.
Ansatte: Vurder de menneskelige ressursene som kreves for å administrere og vedlikeholde infrastrukturen, håndtere kundestøtte, utføre systemvedlikehold og sikre problemfri drift. Ta hensyn til faktorer som distribusjon av arbeidsbelastning, ferdighetssett og nødvendig ekspertise.
Forstå ressursbegrensninger
Ressurser i arbeidsbelastningen har ytelsesbegrensninger. Ytelsesbegrensninger gjelder for funksjoner i hver tjeneste. Du må forstå begrensningene ved ressursene i arbeidsbelastningen og ta hensyn til disse begrensningene i utformingsbeslutninger. Du må for eksempel finne ut om ressursbegrensninger gjør at du må endre utformingstilnærmingen eller endre ressursene helt.
Du må også fastsette grenser som kan nås, som omfatter identifisering av maksimumstersklene eller -grensene for en arbeidsbelastning. Disse grensene gjelder vanligvis for infrastruktur (beregningskraft, lagring, nettverk), program (samtidige tilkoblinger, svartider, tilgjengelighet) og tjeneste (forespørsler per sekund). Når kapasitetsplanlegging identifiserer grenser som kan nås, må du endre arbeidsbelastningen før grensen skaper et ytelsesproblem. Grunnlinjer for ytelse, kontinuerlig overvåking og testing er nødvendig for å kunne validere grensene og løsningen.
Avveining: Feilbedømt kapasitetsplanlegging kan føre til over- eller underklargjøring av ressurser. Klargjøring av for mange ressurser kan føre til høyere kostnader. Klargjøring av for få ressurser kan føre til dårlig ytelse. Det kan også oppstå flere falske positive varsler som kan føre til bortkastet tid på undersøkelse av ytelsesproblemer som ikke finnes. Prøv å finne den rette balansen.
Tilrettelegging for Power Platform
Innsamling av kapasitetsdata og beregning av behov: Azure Monitor gjør at du kan samle inn og analysere telemetridata fra programmene og infrastrukturen. Den støtter overvåking av ulike Azure-ressurser, inkludert virtuelle maskiner, beholdere og lagringskontoer. Viktige verktøy omfatter Application Insights og Log Analytics. Når du konfigurerer datainnsamling og definerer måledata og logger du vil overvåke, kan du samle inn verdifulle arbeidsbelastningsdata for analyse. Når det gjelder nettverksovervåking kombinerer du Azure Monitor med Azure Network Watcher, nettverksinnsikt fra Azure Monitor og overvåking fra Azure ExpressRoute.
Med Azure Monitor kan du analysere historiske data og bruke prognoseteknikker til å forutsi fremtidige arbeidsbelastningstrender og kapasitetskrav. Du kan generere prognoser som kan hjelpe deg med kapasitetsplanlegging. Disse prognosene gjør det enklere å beregne serverkapasitet, nettverksbåndbredde, lagringskapasitet og andre ressursbehov ved å bruke beregnede behovsmønstre.
Fastsettelse av ressurskrav: Siden de byr på en rekke konfigurasjoner, kan Azure-verktøy og -tjenester hjelpe deg å definere tekniske krav. Du kan justere arbeidsbelastningskravene etter tilgjengelige Azure-ressurser, som sikrer at du velger de riktige komponentene og innstillingene slik at de oppfyller de funksjonelle behovene.
Forstå ressursbegrensninger: Power Platform har dokumentasjon og ressurser som hjelper deg å forstå ytelsesbegrensningene ved hver av de ulike tjenestene. Når du tar hensyn til disse begrensningene, blir det enklere å ta informerte utformingsbeslutninger og optimalisere arbeidsbelastningsarkitekturen etter ytelse og kostnadseffektivitet.
Det finnes skaleringsgrenser i konfigurasjonen og tjenestene du bør være klar over. Du kan lese dokumentasjonen eller kjøre tester. Hvis du vil ha mer informasjon, kan du se:
- Grenser og tildelinger for Power Platform-forespørsler
- API-grenser for tjenestebeskyttelse
- Grenser for automatiske og planlagte flyter samt Power Automate-direkteflyter
- Kvoter og begrensninger for Copilot Studio
Bruk av dataoppkall fra lerretsapper: Dataoppkallsflyter fra lerretsapper sender data til tabulære datakilder ved hjelp av koblinger over OData-protokollen. OData-forespørsler flyter til serverdellag for å kontakte datakilden og hente data for klienten, eller sende data til datakilden. Handlingsbaserte koblinger som aktiverer API-er, fungerer på samme måte.
Forståelse av hvordan OData- og API-forespørsler overføres i lerretsapper, kan hjelpe deg å optimalisere ytelsen til lerretsappen og serverdeldatakildene. Hvis du vil vite mer, kan du se Dataoppkallsflyt i lerretsapper.
Relatert informasjon
- Azure Monitor
- Application Insights
- Logganalyse
- Prosessutvinning og oppgaveutvinning i Power Automate
Sjekkliste for ytelseseffektivitet
Se hele settet med anbefalinger.