Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Návod
Tento obsah je výňatek z eBooku, architektury mikroslužeb .NET pro kontejnerizované aplikace .NET, které jsou k dispozici na .NET Docs nebo jako zdarma ke stažení PDF, které lze číst offline.
Vaše mikroslužby a cloudové aplikace musí přijmout částečná selhání, ke kterým dojde nakonec. Aplikaci musíte navrhnout tak, aby byla odolná vůči těmto částečným selháním.
Odolnost je schopnost zotavit se z selhání a nadále fungovat. Nejedná se o zabránění selhání, ale přijetí skutečnosti, že k selháním dojde a odpovídá na ně způsobem, který zabraňuje výpadkům nebo ztrátě dat. Cílem odolnosti je vrátit aplikaci do plně funkčního stavu po selhání.
Je dostatečně náročné navrhnout a nasadit aplikaci založenou na mikroslužbách. Zároveň ale potřebujete, aby vaše aplikace běžela v prostředí, kde je jisté určité selhání. Proto by vaše aplikace měla být odolná. Měla by být navržena tak, aby se dokázala vypořádat s částečnými selháními, jako jsou výpadky sítě, havárie uzlů nebo virtuálních počítačů v cloudu. I mikroslužby (kontejnery) přesunuté do jiného uzlu v clusteru můžou způsobit občasné krátké selhání v rámci aplikace.
Mnoho jednotlivých komponent vaší aplikace by také mělo zahrnovat funkce monitorování stavu. Podle pokynů v této kapitole můžete vytvořit aplikaci, která může hladce fungovat i přes přechodné výpadky nebo drobná narušení, ke kterým dochází ve složitých prostředích s využitím cloudových technologií.
Důležité
eShopOnContainer používal knihovnu Polly k implementaci odolnosti pomocí Typed Clients až do vydání verze 3.0.0. Počínaje verzí 3.0.0 se odolnost volání HTTP implementuje pomocí sítě Linkerd, která zpracovává opakování transparentním a konfigurovatelným způsobem v clusteru Kubernetes, aniž by bylo nutné tyto obavy řešit v kódu.
Knihovna Polly se nadále používá k posílení odolnosti připojení k databázi, zejména při spouštění služeb.
Výstraha
Všechny ukázky kódu a obrázky v této části byly platné před použitím linkerdu a nebyly aktualizovány tak, aby odrážely aktuální skutečný kód. Proto mají smysl v kontextu této části.