https://www.gitbook.com/download/mobi/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/download/epub/book/dzfweb/microsoft-microservices-book
https://www.gitbook.com/book/dzfweb/microsoft-microservices-book/details
TÉLÉCHARGEMENT disponible sur : https://aka.ms/microservicesebook
PUBLIÉ PAR
Division des développeurs Microsoft, équipes produits .NET et Visual Studio
Une division de Microsoft Corporation
Une manière Microsoft
Redmond, Washington 98052-6399
Copyright © 2017 par Microsoft Corporation
Tous droits réservés. Aucune partie du contenu de ce livre ne peut être reproduite ou transmise sous quelque forme ou par quelque moyen que ce soit sans l'autorisation écrite de l'éditeur.
Ce livre est fourni « tel quel » et exprime les points de vue et opinions de l'auteur. Les points de vue, opinions et informations exprimés dans ce livre, y compris les URL et autres références à des sites Internet, peuvent changer sans préavis.
Certains exemples représentés ici sont fournis à titre d’illustration uniquement et sont fictifs. Aucune association ou connexion réelle n’est prévue ou ne devrait être déduite.
Microsoft et les marques répertoriées sur http://www.microsoft.com sur la page Web « Marques » sont des marques du groupe de sociétés Microsoft.
Mac et macOS sont des marques commerciales d'Apple Inc.
Le logo Docker Whale est une marque déposée de Docker, Inc. Utilisée avec autorisation.
Toutes les autres marques et logos sont la propriété de leurs propriétaires respectifs.
Co-auteurs :
Cesar de la Torre , PM senior, équipe produit .NET, Microsoft Corp.
Bill Wagner , développeur de contenu senior, C+E, Microsoft Corp.
Mike Rousos , ingénieur logiciel principal, équipe DevDiv CAT, Microsoft
Editeurs :
Mike Pape
Steve Hoag
Participants et évaluateurs :
Jeffrey Ritcher , partenaire Software Eng, équipe Azure, Microsoft
Jimmy Bogard , architecte en chef chez Headspring
Udi Dahan , fondateur et PDG, Particular Software
Jimmy Nilsson , co-fondateur et PDG de Factor10
Glenn Condron , responsable de programme senior, équipe ASP.NET
Mark Fussell , responsable PM principal, équipe Azure Service Fabric, Microsoft
Diego Vega , responsable PM, équipe Entity Framework, Microsoft
Barry Dorrans , gestionnaire principal du programme de sécurité
Rowan Miller , responsable principal des programmes, Microsoft
Ankit Asthana , responsable PM principal, équipe .NET, Microsoft
Scott Hunter , directeur partenaire PM, équipe .NET, Microsoft
Dylan Reisenberger , architecte et responsable du développement chez Polly
Steve Smith , artisan logiciel et formateur chez ASPSmith Ltd.
Ian Cooper , architecte de codage chez Brighter
Unai Zorrilla , architecte et responsable du développement chez Plain Concepts
Eduard Tomas , responsable du développement chez Plain Concepts
Ramon Tomas , développeur chez Plain Concepts
David Sanz , développeur chez Plain Concepts
Javier Valero , directeur des opérations du Grupo Solutio
Pierre Millet , Consultant Sr, Microsoft
Michael Friis , chef de produit, Docker Inc.
Charles Lowell , ingénieur logiciel, équipe VS CAT, Microsoft
Les entreprises réalisent de plus en plus d'économies de coûts, résolvent les problèmes de déploiement et améliorent les opérations DevOps et de production en utilisant des conteneurs. Microsoft a lancé des innovations en matière de conteneurs pour Windows et Linux en créant des produits comme Azure Container Service et Azure Service Fabric, et en s'associant avec des leaders du secteur comme Docker, Mesosphere et Kubernetes. Ces produits fournissent des solutions de conteneurs qui aident les entreprises à créer et à déployer des applications à la vitesse et à l'échelle du cloud, quel que soit leur choix de plateforme ou d'outils.
Docker est en train de devenir le standard de facto dans l'industrie des conteneurs, soutenu par les fournisseurs les plus importants des écosystèmes Windows et Linux. (Microsoft est l'un des principaux fournisseurs de cloud prenant en charge Docker.) À l'avenir, Docker sera probablement omniprésent dans n'importe quel centre de données dans le cloud ou sur site.
En outre, l’architecture des microservices apparaît comme une approche importante pour les applications distribuées critiques. Dans une architecture basée sur des microservices, l'application repose sur un ensemble de services qui peuvent être développés, testés, déployés et versionnés indépendamment.
Ce guide est une introduction au développement d'applications basées sur des microservices et à leur gestion à l'aide de conteneurs. Il aborde la conception architecturale et les approches de mise en œuvre à l’aide de conteneurs .NET Core et Docker. Pour faciliter la prise en main des conteneurs et des microservices, le guide se concentre sur une application de référence basée sur des conteneurs et des microservices que vous pouvez explorer. L’exemple d’application est disponible dans le dépôt GitHub eShopOnContainers.
Ce guide fournit des conseils fondamentaux en matière de développement et d'architecture, principalement au niveau de l'environnement de développement, en mettant l'accent sur deux technologies : Docker et .NET Core. Notre intention est que vous lisiez ce guide lorsque vous réfléchissez à la conception de votre application sans vous concentrer sur l'infrastructure (cloud ou sur site) de votre environnement de production. Vous prendrez des décisions concernant votre infrastructure plus tard, lorsque vous créerez vos applications prêtes pour la production. Par conséquent, ce guide se veut indépendant de l’infrastructure et plus centré sur l’environnement de développement.
Après avoir étudié ce guide, votre prochaine étape consistera à vous renseigner sur les microservices prêts pour la production sur Microsoft Azure.
Ce guide ne se concentre pas sur le cycle de vie des applications, le DevOps, les pipelines CI/CD ou le travail d'équipe. Le guide complémentaire Containerized Docker Application Lifecycle with Microsoft Platform and Tools se concentre sur ce sujet. Le guide actuel ne fournit pas non plus de détails de mise en œuvre sur l’infrastructure Azure, tels que des informations sur des orchestrateurs spécifiques.
Nous avons rédigé ce guide pour les développeurs et les architectes de solutions qui débutent dans le développement d'applications basées sur Docker et dans l'architecture basée sur les microservices. Ce guide est fait pour vous si vous souhaitez apprendre à concevoir, concevoir et implémenter des applications de validation de principe avec les technologies de développement Microsoft (avec un accent particulier sur .NET Core) et avec les conteneurs Docker.
Ce guide vous sera également utile si vous êtes un décideur technique, tel qu'un architecte d'entreprise, qui souhaite un aperçu de l'architecture et de la technologie avant de décider de l'approche à sélectionner pour les applications distribuées nouvelles et modernes.
La première partie de ce guide présente les conteneurs Docker, explique comment choisir entre .NET Core et .NET Framework en tant que framework de développement et fournit une présentation des microservices. Ce contenu s'adresse aux architectes et aux décideurs techniques qui souhaitent une vue d'ensemble mais qui n'ont pas besoin de se concentrer sur les détails de mise en œuvre du code.
La deuxième partie du guide commence par la section Processus de développement d'applications basées sur Docker. Il se concentre sur les modèles de développement et de microservices pour la mise en œuvre d'applications utilisant .NET Core et Docker. Cette section intéressera particulièrement les développeurs et les architectes qui souhaitent se concentrer sur le code, les modèles et les détails d'implémentation.
L'application eShopOnContainers est une application de référence pour .NET Core et les microservices conçue pour être déployée à l'aide de conteneurs Docker. L'application se compose de plusieurs sous-systèmes, dont plusieurs frontaux d'interface utilisateur de boutique en ligne (une application Web et une application mobile native). Il comprend également les microservices back-end et les conteneurs pour toutes les opérations requises côté serveur.
Le code source de ce microservice et de cette application basée sur un conteneur est open source et disponible sur le dépôt GitHub eShopOnContainers.
Nous avons rédigé ce guide pour vous aider à comprendre l'architecture des applications conteneurisées et des microservices dans .NET. Le guide et l'application de référence associée évolueront, nous apprécions donc vos commentaires ! Si vous avez des commentaires sur la façon dont ce guide peut être amélioré, veuillez les envoyer à :
[!div class="step-by-step"] [Suivant] (container-docker-introduction/index.md)