Share via


Rekommendationer för att svara på problem med liveprestanda

Gäller för denna checklista för Prestandaeffektivitet för Azure Well-Architected Framework:

PE:11 Svara på problem med liveprestanda. Planera hur du ska hantera prestandaproblem genom att ta med tydliga kommunikationslinjer och ansvarsområden. När en problematisk situation inträffar använder du det du lär dig för att identifiera förebyggande åtgärder och införliva dem i din arbetsbelastning. Implementera metoder för att återgå till normal drift snabbare när liknande situationer inträffar.

Den här guiden beskriver metodtipsen för att svara på problem med liveprestanda. Liveprestandaproblem avser realtidsutmaningar och flaskhalsar som kan hindra en arbetsbelastnings optimala funktion. Att åtgärda dessa problem underlättar inte bara omedelbar identifiering och korrigering av prestandahickar, utan säkerställer också att arbetsbelastningen konsekvent uppfyller prestandamåtten. Om de inte åtgärdas kan det leda till komplikationer, till exempel långsammare problem, krascher och system som inte svarar, och försämra användarupplevelsen. De kan också hindra användare från att utföra sina uppgifter effektivt och i sin tur smutskasta organisationens rykte.

Definitioner

Period Definition
Datakorrelation Justera loggar, mått och händelser från olika delar av arbetsbelastningen för att hitta underliggande orsaker.
Rotorsaksanalys En process för att identifiera de underliggande faktorer som är ansvariga för ett problem.
Självläkning Möjligheten att automatiskt reparera problem utan mänsklig inblandning.
Självskydd Implementeringar i en arbetsbelastning för att förhindra potentiella problem och fel.

Viktiga designstrategier

När du upplever ett liveprestandaproblem måste du vara förberedd med rätt data och en plan för att svara på problemet. Denna plan bör innehålla tydliga kommunikations- och ansvarsområden. Det primära målet är att implementera lösningar som underlättar en snabb återgång till vanliga åtgärder och ger insikter från incidenten. Att integrera förebyggande åtgärder i arbetsflödet är en central strategi. Målet är att antingen förhindra att samma problem inträffar igen eller minska dess effekter på prestanda om det inte kan förhindras.

Förbereda för problem

Det perfekta svaret på prestandaproblem på live-plats är exakt och snabbt. Precision och hastighet i prestandareparation kräver förberedelse. För att effektivt svara på problem med liveprestanda är det viktigt att övervaka viktiga prestandamått, identifiera rotorsaken till problemen och implementera lämpliga lösningar eller optimeringar. Om du vill utföra de här stegen kan du behöva analysera arbetsbelastningsloggar, utföra prestandatestning, optimera kod eller konfigurationer och skala resurser. I följande exempel beskrivs några viktiga förberedelseområden:

  • Ha korrekta arkitekturdiagram. Dina arkitekturdiagram bör innehålla alla komponenter och visa hur de interagerar. Visuell representation kan hjälpa dig att identifiera flaskhalsar och enskilda felpunkter som kan leda till försämrad prestanda eller otillgänglighet. Vi rekommenderar att du fångar upp och tar bort dessa problem innan de orsakar problem, men att ha ett uppdaterat diagram kan hjälpa dig att hitta problem i högstressade stunder.

  • Kontrollera dataåtkomst. Data och loggar från övervakningsprocesser är viktiga för att svara på prestandaproblem i realtid och utföra rotorsaksanalyser. Men det är viktigt att upprätthålla dataintegriteten och konfidentialiteten. För att svara på prestandaproblem på live-plats krävs ofta åtkomst till underliggande data som kanske inte är normalt tillgängliga. Du måste se till att personalen har åtkomst till de data som de behöver när problem uppstår. Men du bör bara bevilja tidsbegränsad åtkomst med minsta möjliga behörighet, och du bör begränsa den åtkomsten till behörig personal.

  • Ange automatiska aviseringar. Aviseringar kan hjälpa dig att identifiera och åtgärda problem så snart de inträffar. Aviseringar bör generera meddelanden när arbetsbelastningens prestanda avviker från prestandabaslinjer. Med tiden bör du justera aviseringskonfigurationerna för att undvika att generera för många eller för få meddelanden. De övervakningslösningar som du använder måste samla in tillräckligt med data för att generera aviseringar. Dessa aviseringar bör anpassas till prestandamål och etablerade baslinjer. Du bör undvika att generera aviseringar om problem som är relevanta för dina mål. Exempel på aviseringar är försämringar i CPU-användning, minne, svarstider och databasprestanda.

Skapa en sorteringsplan

När du skapar en prioriteringsplan måste du utforma en strukturerad metod för att identifiera, eskalera, analysera, prioritera och kommunicera prestandaproblem på livewebbplatser. En prioriteringsplan är en strategi för att svara på problem med liveprestanda. Det säkerställer att prestandastörningar åtgärdas snabbt och effektivt, med tydliga roller och procedurer. De flesta prestandaproblem förtjänar inte haveriberedskapsprotokoll, men de kan påverka arbetsbelastningsfunktionerna tillräckligt för att kräva prioriteringsplanering. En väldokumenterad prioriteringsplan säkerställer att alla teammedlemmar justeras och kan agera snabbt, vilket minimerar påverkan på användare och arbetsbelastningar. En sorteringsplan bör innehålla följande komponenter:

  • Identifiering och övervakning: Implementera ett system för att identifiera och övervaka prestandaproblem i realtid. Du bör ha en lista över kontaktinformationen för personer som kan fatta beslut eller eskalera problem till högre nivåer. Planen bör också identifiera roller och ansvarsområden. Den måste dokumentera vilka konton som får åtkomst till skyddad information och hur länge.

  • Eskaleringsprocess: Definiera en tydlig eskaleringsprocess för att säkerställa att prestandaproblem eskaleras till lämpliga team eller individer i tid. Processdefinitionen bör innehålla kontaktuppgifter och riktlinjer för eskalerande problem.

  • Rotorsaksanalys: Utveckla en process för att utföra en rotorsaksanalys för att identifiera den underliggande orsaken till varje prestandaproblem. Processen bör omfatta analys av loggar och prestandamått och diagnostiska tester för att hitta källan till varje problem.

  • Prioritering: Upprätta ett prioriteringsramverk för att fastställa allvarlighetsgraden för prestandaproblem och prioritera dem baserat på deras effekt på arbetsbelastningen och användarna.

  • Kommunikation: Skapa en kommunikationsplan för att hålla intressenterna informerade om status för prestandaproblem och förloppet för deras lösning. Överväg regelbundna uppdateringar, statusrapporter och tydliga kommunikationskanaler.

  • Dokumentation: Dokumentera prioriteringsplanen, inklusive alla dess steg, processer och bästa praxis. Den här dokumentationen bör vara lättillgänglig för de teammedlemmar som är involverade i att svara på prestandaproblem.

Utveckla metoder för att identifiera och lösa problem

Att lösa problem med liveprestanda är att identifiera och åtgärda faktorer som kan orsaka försämrad prestanda eller ineffektivitet i en livearbetsbelastning. Data som du samlar in under övervakningen är ovärderliga när du undersöker och löser prestandarelaterade incidenter. Dessa data ger en historisk post med prestandamått. När du har tillgängliga övervakningsdata kan du analysera rotorsaker och identifiera bidragande faktorer. Du bör använda alla relevanta övervakningsdata för att förstå och åtgärda varje prestandaproblem.

Använda rotorsaksanalys

Rotorsaksanalys kräver hypotestestning. När du har granskat övervakningsdata bör du lista potentiella orsaker till prestandaproblemet och testa dem. Om du vill utföra en rotorsaksanalys av ett liveprestandaproblem kan du följa dessa steg:

  1. Samla in information. Samla in så mycket information som möjligt om prestandaproblemet. Exempel är felmeddelanden, loggar, prestandamått och andra relevanta data.

  2. Definiera problemet. Definiera problemet tydligt genom att identifiera symptomen och vilken effekt problemet har på arbetsbelastningen eller användarna.

  3. Undersöka potentiella orsaker. Begränsa analysens omfattning genom att identifiera den specifika komponenten eller området för arbetsbelastningen där prestandaproblemet uppstår. Identifiera möjliga orsaker till prestandaproblemet baserat på den insamlade informationen. Den här processen kan omfatta analys av kod, konfigurationsinställningar, infrastruktur eller externa beroenden.

  4. Korrelera data. Gå djupare in i insamlade data för att identifiera mönster, avvikelser eller korrelationer som kan bidra till prestandaproblemet. Datakorrelation är nyckeln till att identifiera prestandaproblem och orsaker. Det kan handla om att granska loggar, analysera prestandamått och utföra tester.

  5. Testa hypoteser. Formulera hypoteser baserat på de potentiella orsaker som du identifierar. Utför tester för att verifiera eller motbevisa dina hypoteser. Du bör använda en testmiljö för att se om du kan replikera felet.

  6. Implementera lösningar. När du har identifierat en rotorsak kan du utveckla och implementera lösningar för att åtgärda prestandaproblemet.

  7. Övervaka och verifiera. När du har implementerat lösningarna övervakar du arbetsbelastningen kontinuerligt för att säkerställa att prestandaproblemet är löst. Verifiera lösningarnas effektivitet genom att övervaka prestandamått och användarfeedback.

Kompromiss: Stegen i en rotorsaksanalys, till exempel att identifiera möjliga orsaker, testa hypoteser och dokumentera analysen, kan vara tidskrävande. För att korrelera prestandaproblem måste du också samla in och lagra data. Den tid och infrastruktur som krävs kan ge driftteamen betydande arbete och kostnader för arbetsbelastningen.

Risk: Om du utför en rotorsaksanalys utan rätt skyddsräcken finns det en risk att du exponerar känslig information när du ger åtkomst till loggar och data.

Kontakta leverantörssupporten

Leverantörssupport kan vara ett viktigt steg när du hanterar pågående prestandaproblem. Leverantörer har expertis, verktyg, resurser och erfarenhet för att åtgärda problem med sina produkter. Ditt supportavtal med din leverantör avgör vilken supportnivå en leverantör tillhandahåller.

Det är ofta bäst att arbeta parallellt med leverantörer. Du bör skapa en plan för att låta vissa teammedlemmar samarbeta med leverantörssupport medan andra fortsätter att prioritera och åtgärda prestandaproblem. Leverantörssupportteam kan också ge förslag på hur du kan förhindra och automatisera svar på liknande händelser.

Du måste ha kontaktinformation tillgänglig för din personal. Leverantörer kan också behöva åtkomst till data för att effektivt engagera sig i problemlösning. Du måste ha en plan för att autentisera och auktorisera externa konton eller gästkonton för åtkomst till övervakningsdata.

Lär dig av resultaten

När du har åtgärdat ett prestandaproblem för livewebbplatser måste du granska vad som hände. Målet är att lära sig av prestandaproblem, inte bara identifiera problem. Det bästa sättet att lära sig är genom dokumentationen. Dokumentera varje problem och förklara hur du åtgärdar det. Om en leverantör hjälpte till kan du samarbeta med leverantören för att förbättra din dokumentation, utbilda ditt team och ändra arbetsbelastningen i enlighet med detta.

Dokumentationen bör ange hur du förhindrar att varje problem uppstår igen. Ett sätt att undvika återkommande problem är att införa automatisering för att svara på vanliga problem. Automation bör lägga till egenskaper för självåterställning och självskydd i en arbetsbelastning. Tillsammans med automatiseringen kan du skapa förfinade aviseringar som hjälper dig att svara tidigt på indikatorer för prestandaproblem.

Azure-underlättande

Utveckla metoder för att identifiera och lösa problem: Azure innehåller flera verktyg som hjälper dig att svara på problem med liveprestanda:

  • Azure Monitor är en omfattande övervakningslösning som ger insikter om prestanda och hälsotillstånd för dina program och din infrastruktur. Övervaka erbjuder funktioner som mått, loggar, aviseringar och instrumentpaneler som hjälper dig att övervaka och diagnostisera prestandaproblem.

  • Application Insights är en tjänst för hantering av programprestanda (APM) som hjälper utvecklare och DevOps-proffs att övervaka liveprogram. Den identifierar automatiskt prestandaavvikelser, samlar in loggar och händelser på programnivå och tillhandahåller analysverktyg för att diagnostisera problem.

  • Log Analytics är en tjänst som samlar in och analyserar loggdata från olika källor, inklusive program, virtuella datorer och Azure-resurser. När du använder Log Analytics kan du fråga och analysera loggdata för att få insikter om prestanda och beteende för dina program.

Checklista för prestandaeffektivitet

Se den fullständiga uppsättningen rekommendationer.