Une architecture micro-services va bien au-delà d’un simple découpage technique : elle découle de principes solides tels que le Domain-Driven Design, le déploiement autonome, la scalabilité horizontale et l’intégration continue. Cette formation vous guide dans la mise en œuvre concrète de ces principes avec la stack Spring Cloud. Vous découvrirez les patterns clés nécessaires à une architecture distribuée : service discovery avec Eureka, communication asynchrone via Kafka, exposition via une API Gateway, gestion centralisée de la configuration, souveraineté des données, tests ciblés. À travers des ateliers pratiques, vous transformerez une application monolithe existante en un ensemble de micro-services cohérents, testables et déployables indépendamment. Ce parcours vous permettra de maîtriser les outils Spring Cloud (Gateway, Config, Netflix, Kafka) tout en assimilant les décisions d’architecture fondamentales pour faire évoluer vos projets dans des environnements distribués complexes.
Objectif
Acquérir les connaissances nécessaires pour concevoir, développer et orchestrer une architecture micro-services conforme aux bonnes pratiques, en s’appuyant sur la stack Spring Cloud.
Est-ce pour vous ?
Développeurs et architectes.
Préalables
Ce cours demande une connaissance solide des bases de la programmation Java (principes de la programmation orientée objet, types génériques, annotations, expressions lambda), de Spring et Spring boot et une habitude de travailler avec Eclipse ou IntelliJ.
Vos gains
Contenu
Introduction
- Les bounded contexts comme prérequis à une architecture micro-services.
- Le fonctionnement stateless pour favoriser la scalabilité horizontale.
- Les types de livrables: application autonome ou fonction serverless.
- La souveraineté sur les données.
- La communication entre micro-services.
- Les tests.
Voir plus +/-
Mise en pratique: refactoring d'une application monolithe en micro-services
Service discovery avec Spring cloud Netflix
- Service discovery: présentation du concept.
- Le rôle de l'Eureka server.
- Les opérations de self registration et self unregistration.
- La propagation de la registry.
- Les health checks comme moyen de maintenir à jour la registry.
- La mise en oeuvre du load balancing.
- Le requétage d'une application avec le RestClient.
Mise en pratique: prise en main d'une application Spring (accès aux données, API REST, tests).
Publish / subscribe avec le brokerApache Kafka
- Le rôle du broker dans une architecture micro-services.
- Présentation de Kafka.
- La souscription à un topic.
- L'envoi de messages sur un topic.
Mise en pratique: communication asynchrone entre micro-services avec Kafka et spring-kafka.
L'exposition des micro-services avec Spring cloud API Gateway
- L'API Gateway comme point d'entrée à un ensemble de micro-services.
- Les règles de routage.
- L'action de l'API Gateway sur les requêtes et les réponses (réessais, sécurité, etc...).
- L'agrégation de données.
Mise en pratique: création d'une API Gateway avec Spring Cloud Gateway pour exposer les micro-services développés précédemment.
La centralisation de la configuration avec Spring Cloud Config
- Le rôle d'un config server.
- Le stockage et la protection des propriétés.
- Les méthodes de cryptages des propriétés.
- Le couplage avec un Eureka Server.
- La déclaration d'un config server dans les applications clientes.
Mise en pratique: création d'un serveur d'un config server avec Spring cloud Config, couplage des micro-services avec celui-ci.
💡 Informations utiles
Nos formations sont offertes à Montréal ou Québec en présentiel ou en format virtuel. Les dates et lieux sont précisés lors de votre choix de session ci-dessous. Si vous avez des questions concernant l'inscription, les horaires, la langue d’enseignement ou les modalités d’annulation, consultez notre FAQ .
Intervenants
Formation en entreprise
Vous avez plusieurs employés intéressés par une même formation? Que ce soit en présentiel dans vos bureaux ou à distance en mode virtuel, nous offrons des formations privées adaptées aux besoins de votre équipe. Des tarifs de groupes sont disponibles. Contactez-nous pour plus de détails ou demandez une soumission en ligne.
Demander une soumission