Delen via


Flexibele toepassingen implementeren

Aanbeveling

Deze inhoud is een fragment uit het eBook, .NET Microservices Architecture for Containerized .NET Applications, beschikbaar op .NET Docs of als een gratis downloadbare PDF die offline kan worden gelezen.

.NET Microservices Architectuur voor Gecontaineriseerde .NET Toepassingen eBook omslagthumbnail.

Uw microservice- en cloudtoepassingen moeten de gedeeltelijke fouten omarmen die uiteindelijk zeker zullen optreden. U moet uw toepassing ontwerpen om bestand te zijn tegen deze gedeeltelijke fouten.

Veerkracht is het vermogen om te herstellen van mislukkingen en te blijven functioneren. Het gaat niet om het vermijden van fouten, maar het accepteren van het feit dat fouten optreden en erop reageren op een manier die downtime of gegevensverlies voorkomt. Het doel van tolerantie is om de toepassing te retourneren naar een volledig functionerende status na een storing.

Het is lastig genoeg om een toepassing op basis van microservices te ontwerpen en te implementeren. Maar u moet uw toepassing ook blijven uitvoeren in een omgeving waarin een of andere fout zeker is. Daarom moet uw toepassing tolerant zijn. Het moet worden ontworpen om te kunnen omgaan met gedeeltelijke fouten, zoals netwerkstoringen of knooppunten of VM's die in de cloud vastlopen. Zelfs microservices (containers) die naar een ander knooppunt binnen een cluster worden verplaatst, kunnen onregelmatige korte fouten in de toepassing veroorzaken.

De vele afzonderlijke onderdelen van uw toepassing moeten ook functies voor statuscontrole bevatten. Door de richtlijnen in dit hoofdstuk te volgen, kunt u een toepassing maken die soepel kan werken ondanks tijdelijke downtime of de normale problemen die optreden in complexe en cloudimplementaties.

Belangrijk

eShopOnContainer had de Polly-bibliotheek gebruikt om veerkracht te implementeren met behulp van Getypte Clients tot de release 3.0.0. Vanaf release 3.0.0 wordt de tolerantie voor HTTP-aanroepen geïmplementeerd met behulp van een Linkerd mesh, die nieuwe pogingen op transparante en configureerbare wijze binnen een Kubernetes-cluster afhandelt, zonder dat deze problemen in de code hoeven te worden verwerkt.

De Polly-bibliotheek wordt nog steeds gebruikt om tolerantie toe te voegen aan databaseverbindingen, speciaal tijdens het opstarten van de services.

Waarschuwing

Alle codevoorbeelden en -afbeeldingen in deze sectie waren geldig voordat linkerd werd gebruikt en worden niet bijgewerkt om de huidige werkelijke code weer te geven. Ze zijn dus logisch in de context van deze sectie.