Principer för grundpelaren för tillförlitlighet
Att skapa ett tillförlitligt program i molnet skiljer sig från traditionell programutveckling. Tidigare kanske du har köpt nivåer av redundant maskinvara på högre nivå för att minimera risken för att en hel programplattform misslyckas, men i molnet bekräftar vi i första hand att fel kommer att inträffa. Målet är att minimera effekten av en enda komponent som havererar snarare än att förhindra fel helt och hållet.
Programramverk
Dessa viktiga principer används som objektiv för att utvärdera tillförlitligheten för ett program som distribueras i Azure. De tillhandahåller ett ramverk för de programutvärderingsfrågor som följer.
Information om hur du utvärderar din arbetsbelastning med hjälp av principerna i Microsoft Azures välstrukturerade ramverk finns i översikten över Microsoft Azures välstrukturerade ramverk.
Definiera och testa tillgänglighets- och återställningsmål: Tillgänglighetsmål, till exempel serviceavtal (SLA) och servicenivåmål (SLO) och återställningsmål, till exempel mål för återställningstid (RTO) och återställningspunktmål (RPO), bör definieras och testas för att säkerställa att programmets tillförlitlighet överensstämmer med affärskraven.
Utforma program så att de är motståndskraftiga mot fel: Elastiska programarkitekturer bör utformas för att återställa på ett smidigt sätt från fel i enlighet med definierade tillförlitlighetsmål.
Se till att nödvändig kapacitet och tjänster är tillgängliga i målregioner: Azure-tjänster och kapacitet kan variera efter region, så det är viktigt att förstå om målregioner erbjuder nödvändiga funktioner.
Planera för haveriberedskap: Haveriberedskap är en process för att återställa programfunktioner efter ett oåterkalleligt fel. Det kan vara acceptabelt att vissa program är otillgängliga eller delvis tillgängliga med begränsad funktionalitet under en viss tidsperiod, medan andra program kanske inte tolererar nedsatt funktionalitet.
Utforma programplattformen för att uppfylla tillförlitlighetskraven: Det är viktigt att designa programplattformens återhämtning och tillgänglighet för att säkerställa övergripande programtillförlitlighet.
Utforma dataplattformen för att uppfylla tillförlitlighetskraven: Det är viktigt att designa återhämtning och tillgänglighet för dataplattformen för att säkerställa övergripande programtillförlitlighet.
Återställa från fel: Elastiska program bör kunna återställas automatiskt från fel genom att använda moderna kodmönster för molnprogram.
Se till att nätverk och anslutningar uppfyller tillförlitlighetskraven: Att identifiera och minimera potentiella flaskhalsar eller felpunkter i nätverket stöder en tillförlitlig och skalbar grund som elastiska programkomponenter kan kommunicera över.
Tillåt tillförlitlighet vad gäller skalbarhet och prestanda: Elastiska program bör kunna skalas automatiskt som svar på en föränderlig belastning för att upprätthålla programmets tillgänglighet och uppfylla prestandakraven.
Hantera säkerhetsrelaterade risker: Att identifiera och åtgärda säkerhetsrelaterade risker hjälper till att minimera programmets driftstopp och dataförlust som orsakas av oväntade säkerhetsexponeringar.
Definiera, automatisera och testa operativa processer: Driftprocesser för programdistribution, till exempel återställning och återställning, bör definieras, vara tillräckligt automatiserade och testade för att säkerställa anpassningen till tillförlitlighetsmål.
Testa feltolerans: Programarbetsbelastningar bör testas för att verifiera tillförlitlighet mot definierade tillförlitlighetsmål.
Övervaka och mäta programmets hälsotillstånd: Övervakning och mätning av programmets tillgänglighet är viktigt för att kvalificera övergripande programhälsa och framsteg mot definierade tillförlitlighetsmål.