Votre équipe souffre-t-elle des symptômes de l’enfer monolithique ? Vous vous demandez si une architecture de microservices est la bonne solution pour votre projet .NET ? Vous a-t-on demandé d’implémenter des microservices et vous ne savez pas par où commencer ? Êtes-vous simplement curieux de connaître ce nouveau terme à la mode ? Dans ce cours, vous apprendrez pourquoi adopter une architecture de microservices et comment commencer en utilisant la plate-forme .NET.
Vous apprendrez les éléments fondamentaux des microservices en créant progressivement une application basée sur des microservices réels avec .NET 5, étape par étape. Les deux premiers microservices de cette application sont construits dans ce cours, chacun stockant ses données dans une base de données MongoDB hébergée par Docker et communiquant tous deux de manière asynchrone via un courtier de messages RabbitMQ et MassTransit.
Ici pour certaines des choses que vous apprendrez dans ce cours :
- Comment créer ASP.NET C Microservices basés sur ore 5 à partir de zéro à l’aide de Visual Studio Code
- Utilisez des bases de données MongoDB NoSQL individuelles pour une utilisation exclusive par chaque microservice
- Implémenter communication inter-services asynchrone via RabbitMQ et MassTransit
- Fondements, avantages et inconvénients de l’architecture des microservices
- Implémenter des modèles de conception communs utilisés avec les microservices comme le référentiel, les tentatives avec interruption exponentielle et disjoncteur
- Utilisez les types d’enregistrement C# 9 pour définir les DTO et les contrats de message utilisés par les microservices
- Comment implémenter les opérations courantes d’une API REST de microservices
- Utilisez Docker et Docker Compose pour exécuter des services comme MongoDB et RabbitMQ dans votre box pour prendre en charge vos microservices</ p>
- Utilisez Swagger/OpenAPI et Postman pour explorer et interagir avec vos API de microservices
- Implémenter une communication interservices résiliente via IHttpClientFactory et Polly
- Implémenter l’événement cohérence des données en répliquant les données entre les microservices
- Intégrez les microservices avec une application à page unique basée sur React dans le monde réel
- Créez des packages NuGet pour partager des contrats de logique et de message réutilisables entre les microservices
- Créez deux microservices d’une application de bout en bout où les joueurs peuvent acheter des articles de jeu avec de la monnaie virtuelle
Nous ne sauterons pas directement à l’implémentation idéale, nous commencerons par une implémentation très simple et “naïve”, nous apprendrons les erreurs courantes lors de la mise en œuvre des microservices, nous allons découvrez plusieurs techniques et modèles dans le monde des microservices et enfin nous arriverons à une belle implémentation basée sur les meilleures pratiques.
Il s’agit d’un cours de niveau débutant , donc je prends intentionnellement mon temps pour expliquer chaque nouveau concept d’une manière très didactique pour m’assurer que vous comprenez le but du code que vous êtes sur le point d’écrire. Vous ne trouverez aucun code magique copié à partir de sources externes ou cachées. Nous commencerons absolument à partir de zéro et j’expliquerai chaque ligne de code au fur et à mesure que je les ajouterai aux projets.
Vous devriez avoir des connaissances de base en C# et idéalement une certaine expérience en développement Web pour tirer le meilleur parti de ce cours. Cependant, Je ne fais aucune hypothèse sur vos connaissances antérieures d’ASP.NET Core ou de l’une des autres bibliothèques, outils et techniques utilisés pendant le cours. Tant que vous êtes désireux d’apprendre par la pratique, je pense que vous apprécierez vraiment ce cours puisque j’expliquerai tout ce que je fais pendant que nous écrivons le code ensemble.
À la fin de ce cours, vous aurez une application avec deux microservices entièrement fonctionnels basés sur .NET, mais surtout, vous comprendre chaque ligne de code, comment les microservices fonctionnent ensemble et pourquoi nous avons abouti à l’implémentation finale.