TI272
Technologies de l'information

Spring Cloud : concevoir une architecture microservices évolutive

Adoptez les bons patterns pour construire des systèmes distribués fiables et scalables

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.

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.

Ce que vous saurez faire

  • Concevoir une architecture microservices basée sur des bounded contexts et des services stateless
  • Mettre en œuvre un service discovery avec Eureka et gérer le load balancing et les health checks
  • Implémenter une communication asynchrone entre microservices avec Kafka et Spring-Kafka
  • Exposer et sécuriser les services via une API Gateway avec routage, agrégation et gestion des requêtes
  • Centraliser et sécuriser la configuration des applications avec Spring Cloud Config

Contenu de la formation

1 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.

2 Mise en pratique: refactoring d'une application monolithe en micro-services

3 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).

4 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.

5 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.

6 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.

Voir plus

📌 Informations pratiques

Nos formations sont offertes à Montréal ou Québec, en présentiel ou en classe virtuelle. Les dates et lieux sont précisés lors de votre choix de session ci-dessous. Si vous avez des questions, consultez notre FAQ.

Intervenants

Durée
2 jours
Horaire
Voir les dates de formations pour plus de détails
Tarif régulier
1 035 $
Tarif préférentiel Un tarif préférentiel est accordé pour chacun des cours aux organismes publics, aux membres de certaines associations ainsi qu’aux entreprises ayant une entente avec Technologia (voir FAQ). Pour la liste complète des entités admissibles, consulter la section « Tarification » des FAQ. Notez également qu’aucun tarif préférentiel n’est accordé pour les formations en ligne. Les rabais accordés sur les formations ne peuvent être cumulables avec aucune autre promotion.
930 $
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

Demander une 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.

Dites-nous en plus
Ajout effectué Voir mon panier