Architecture - Microservices avec Spring Boot
Besoin d’adapter cette formation à vos besoins ?
N’hésitez pas à nous contacter afin d’obtenir un devis sur mesure !
Formation créée le 15/03/2024. Dernière mise à jour le 10/03/2025.
Version du programme : 1
Programme de la formation
Objectif de la formation : Cette formation vise à doter les participants d'une compréhension approfondie de l'architecture microservices en utilisant Spring Boot. Les apprenants seront guidés à travers les étapes de conception, de développement, et de déploiement d'applications basées sur des microservices.
Objectifs de la formation
- Comprendre les principes et avantages de l'architecture microservices
- Maîtriser le développement d'applications basées sur des microservices avec Spring Boot
- Appliquer les bonnes pratiques pour la sécurisation, le logging et le monitoring des microservices
- Utiliser la puissance de Spring Boot pour accélérer le développement et créer des Microservices
- Acquérir les compétences pour conteneuriser et déployer des microservices avec Docker et Kubernetes
Profil des bénéficiaires
- Développeurs Java
- Architectes logiciels
- Ingénieurs DevOps
- Maîtrise de la programmation en Java
- Expérience de base avec le framework Spring et Spring Boot
- Familiarité avec les concepts de développement web et RESTful APIs
- Des connaissances de base de Docker et des conteneurs sont recommandées mais pas obligatoires
Contenu de la formation
-
Introduction à l'architecture microservices et Spring Boot (7 heures)
- Vue d'ensemble : Avantages et défis de l'architecture microservices
- Comparaison avec l'architecture monolithique
- Introduction à Spring Boot : Configuration d'un projet Spring Boot
- Compréhension de l'auto-configuration et du starter POM
- Travaux pratiques : Création et exécution d'une application Spring Boot simple
-
Développement de Microservices avec Spring Boot (7 heures)
- Structure d'un microservice dans Spring Boot
- Gestion des configurations et des propriétés
- Introduction à Spring Cloud et Spring Cloud Netflix
- Utilisation de Eureka, Ribbon, et Feign pour la découverte de services et la communication
- Travaux pratiques : Développement de microservices simples avec Spring Boot. Configuration de la découverte de services et communication entre eux.
-
Gestion des données et accès aux données dans les microservices (7 heures)
- Patterns de base de données pour microservices : Database-per-Service, Saga Pattern
- Transactions distribuées et gestion de la cohérence
- Configuration et utilisation de Spring Data JPA dans les microservices
- Introduction à la gestion des transactions
- Travaux pratiques : Manipulation de bases de données pour microservices avec la création de modèles de données et accès aux données avec Spring Data JPA
-
Sécurité, logging et monitoring des microservices (7 heures)
- Principes de sécurisation des microservices
- Authentification et autorisation avec Spring Security et JWT
- Configuration de logs centralisés avec ELK Stack ou Splunk
- Monitoring des microservices avec Spring Boot Admin et Prometheus
- Travaux pratiques : Implémentation de la sécurité dans les microservices - configuration du logging centralisé et la mise en place de monitoring
-
Déploiement et scalabilité des microservices (7 heures)
- Création de Dockerfiles pour les microservices
- Utilisation de Docker Compose pour orchestrer les conteneurs
- Principes de base de Kubernetes
- Déploiement d'une application microservices sur Kubernetes
- Travaux pratiques : Mise en pratique d'une conteneurisation des applications développées avec un déploiement sur un environnement Kubernetes et mise en oeuvre d'une gestion de la scalabilité
Professionnel expert en développement Java
- Feuilles de présence.
- Questions orales ou écrites (QCM).
- Mises en situation.
- Formulaires d'évaluation de la formation.
- Certificat de réalisation de l’action de formation.
- Accueil des apprenants dans une salle dédiée à la formation.
- Documents supports de formation projetés.
- Exposés théoriques
- Etude de cas concrets
- Quiz en salle
- Mise à disposition en ligne de documents supports à la suite de la formation.