Einleitung

Abgeschlossen

Stellen Sie sich vor, Sie sind Softwareentwickler für einen Onlinehändler mit dem Namen eShop. Der Händler verwendet eine mikroservicesbasierte Architektur, die in der Cloud nativ ist, und verwendet .NET für seine Online-Storefront. Die Lösung enthält eine NET-API, die als Produktdienst bezeichnet wird. Der Store-Dienst führt Aufrufe an die Back-End-Produkt-API durch, um Details zu den Produkten zum Verkauf zu erhalten.

Dieses Modul konzentriert sich auf Resilienz, was die Fähigkeit einer Anwendung oder eines Diensts zur Behandlung von Problemen darstellt. Resilienz trägt dazu bei, dass Ihre App fehlertolerant ist, mit möglichst geringem Einfluss auf den Benutzer. Die folgenden Resilienzansätze werden untersucht:

  • Verwenden eines codebasierten Ansatzes
  • Verwenden eines infrastrukturbasierten Ansatzes

Sie ändern die App so, dass sie einige codebasierte Resilienzbehandlungsrichtlinien in einen Microservice einschließt. Außerdem konfigurieren Sie Ihre Azure Kubernetes Service (AKS)-Bereitstellung neu, um eine infrastrukturbasierte Lösung zu implementieren.

Sie verwenden Ihr eigenes Azure-Abonnement, um die Ressourcen in diesem Modul bereitzustellen. Wenn Sie nicht über ein Azure-Abonnement verfügen, erstellen Sie ein kostenloses Konto , bevor Sie beginnen.

Von Bedeutung

Um unnötige Gebühren in Ihrem Azure-Abonnement zu vermeiden, müssen Sie Ihre Azure-Ressourcen löschen, wenn Sie mit diesem Modul fertig sind.

Entwicklungscontainer

Dieses Modul enthält Konfigurationsdateien, in denen ein Entwicklungscontainer (oder Dev-Container) definiert wird. Durch die Verwendung des Entwicklungscontainers wird eine standardisierte Umgebung gewährleistet, in der die erforderlichen Tools vorkonfiguriert sind.

Der Entwicklungscontainer kann in einer von zwei Umgebungen ausgeführt werden. Bevor Sie beginnen, führen Sie die in einem der folgenden Links dargestellten Schritte aus, um Ihre Umgebung einzurichten, einschließlich der Installation von Docker und der erforderlichen Visual Studio Code-Erweiterungen.

Lernziele

In diesem Modul lernen Sie Folgendes:

  • Grundlegende Konzepte der Resilienz verstehen.
  • Beobachten Sie das Verhalten eines Microservice ohne Resilienzstrategie.
  • Implementieren Sie Fehlerbehandlungscode für HTTP-Anforderungen in einem Microservice.
  • Stellen Sie eine infrastrukturbasierte Resilienzlösung auf einem AKS-Cluster bereit.

Voraussetzungen

  • Vertrautheit mit der C#- und .NET-Entwicklung auf Anfängerebene.
  • Vertrautheit mit RESTful-Dienstkonzepten.
  • Konzeptionelle Kenntnisse von Containern und AKS auf mittlerer Ebene.
  • Möglichkeit zum Ausführen von Entwicklungscontainern in GitHub Codespaces oder in Visual Studio Code.