Zásady pro návrh spolehlivosti

Vytváření spolehlivých aplikací v cloudu se liší od tradičního vývoje aplikací. Historicky jste si mohli koupit úrovně redundantního hardwaru s vyšším počtem, aby se minimalizovala pravděpodobnost selhání celé aplikační platformy.

V cloudu potvrzuji, že dojde k selhání. Místo snahy kompletně zabránit selháním je cílem minimalizace dopadu selhání jedné komponenty.

pokud chcete vyhodnotit své zatížení pomocí nástroje principy, který se nachází v Azure Well-Architected Framework, přečtěte si Microsoft Azure Well-Architected kontrolu.

Následující principy návrhu poskytují:

  • Kontext pro otázky
  • Proč je určitý aspekt důležitý
  • Způsob, jakým se vztahuje aspekt na spolehlivost

Tyto kritické zásady návrhu se používají jako rozptylová skla k vyhodnocení spolehlivosti aplikace nasazené v Azure. Tato rozptylová skla poskytují rozhraní pro otázky hodnocení aplikace.

Návrh pro obchodní požadavky

Spolehlivost je subjektivní pojem. Aby byla aplikace vhodně spolehlivá, musí odrážet obchodní požadavky na jejich okolí.

Například kritická aplikace se smlouvou o 99.999% úrovni služeb (SLA) vyžaduje vyšší úroveň spolehlivosti než jiná aplikace s SLA 95% .

Dopad na náklady je nevyhnutelný při zavlečení větší spolehlivosti a vysoké dostupnosti. Tento obchod by měl být pečlivě zvážen.

Návrh pro selhání

Selhání se nepovedlo vyhnout v vysoce distribuovaném a víceklientském prostředí, jako je Azure.

Díky předvídání selhání z jednotlivých komponent do celé oblasti Azure můžete vyvíjet řešení odolným způsobem, aby bylo možné zvýšit spolehlivost.

Sledovat stav aplikace

Před zmírněním problémů, které mají vliv na spolehlivost aplikace, je nutné nejprve tyto problémy zjistit.

Monitorováním provozu aplikace vzhledem k zdravému stavu můžete zjistit a odhadnout problémy se spolehlivostí.

Monitorování vám umožní provést rychlou a nápravnou akci.

Automatizace jednotky

Jedním z hlavních příčin výpadku aplikace je lidská chyba kvůli nasazení nedostatečného testovaného softwaru nebo prostřednictvím chybné konfigurace.

Aby se minimalizovala možnost a důsledek lidských chyb, je důležité se na automatizaci snažit ve všech aspektech cloudového řešení.

Automatizace zlepšuje:

  • Spolehlivost
  • Automatizované testování
  • Nasazení
  • Správa

Návrh pro samoopravení

Možnost automatického retušování popisuje schopnost systému řešit chyby automaticky. Ke zpracování selhání dojde prostřednictvím předem definovaných protokolů oprav. Tyto protokoly se připojují k režimům selhání v rámci řešení.

Je to pokročilý pojem, který vyžaduje vysokou úroveň systému v rámci sledování a automatizace.

Z toho, že by bylo možné samočinně maximalizovat spolehlivost, by mělo být nasávání.

Návrh pro horizontální navýšení kapacity

Horizontální navýšení kapacity je koncept, který se zaměřuje na schopnost systému reagovat na poptávku prostřednictvím horizontálního nárůstu. Jak provoz roste, Další jednotky prostředků se přidávají paralelně, místo aby se zvýšila velikost existujících prostředků.

Díky jednotkám škálování může systém zvládnout očekávanou a neočekávaný nárůst provozu, který je nezbytný pro celkovou spolehlivost.

Jednotky škálování dále snižují účinky jednoho selhání prostředku.

Další krok