Référence : MICJ
Durée : 3 jours (21 heures)
Dernière mise à jour : juillet 2023
Présentation
Durant de nombreuses années, le serveur d’applications a été l’alpha et l’omega du développement Java d’entreprise. Sorte de système d’exploitation dans le système d’exploitation, il offre aux applications une palette complète de fonctionnalités techniques : moniteur transactionnel, plateforme de web services REST et SOAP, traitements par lots, planificateur de tâches…
Ce type d’architecture a atteint aujourd’hui ses limites. En effet, l’accélération des cycles de développement et la nécessité de garantir une montée en charge optimale rendent indispensable le découplage entre les composants logiciels d’une même application. Ainsi grâce aux microservices, il devient possible de gérer indépendamment ces modules les uns des autres.
La formation s’attachera à la fois à expliquer la philosophie architecturale sous-jacente aux microservices et à détailler leur mise en oeuvre concrète avec les technologies Java.
Programme
Introduction aux microservices
- Définition, mise en perspective
- Comparaison avec d’autres architectures
- Agilité, DevOps : les pratiques favorisant les microservices
- Des avantages mais de nouveaux challenges
Caractéristiques des architectures microservices
- Indépendance et périmètre réduit
- Communications synchrones et asynchrones
- Formalisation des contrats d’interface
- Les problématiques de conception
Communication entre les services
- API RESTful
- Les fondamentaux de REST
- Mise en oeuvre avec Jakarta RESTful
- Apports de GraphQL
- Librairies clientes
- La découverte des services
- Communication par messages asynchrones
- Mise en oeuvre avec Kafka
- La tolérance aux pannes
Développer un microservice en Java
- L’approche standard : Eclipse MicroProfile
- Quarkus, Spring Boot, Micronaut
- Serveur embarqué minimal
- Exécution, débogage et configuration IDE
- Documenter un service REST (Open API)
- Les patterns : TimeOut, RetryPolicy, Fallback, Bulkhead, CircuitBreaker
Déploiement d’une architecture microservices
- Présentation de Docker
- Images et conteneurs
- Créer ses propres images
- Application multi-conteneur avec Docker Compose
- Apports des orchestrateurs
- Les offres Cloud
Suivi de production
- Gestion des logs en environnement distribué
- API Health Check (Liveness et Readiness)
- Supervision des services
- Remontée des métriques
- Après les logs, les traces
En présentiel
Nous dispensons nos formations en présentiel dans nos locaux de Toulouse ou dans vos locaux dans toute l’Europe.
En distanciel
Nous dispensons également nos formations à distance, sous forme de classe virtuelle en visio conférence, avec l’outil de votre choix (Google Meet, Teams, Zoom…).
Pour toute demande contactez-nous !
Méthode pédagogique
60% de travaux pratiques
Modalités d’évaluation
Travaux pratiques
Audience
Architectes, Développeurs Java
Versions des technologies
Java 17, MicroProfile 6
Pré-requis
Une bonne pratique de Java
Tarif
Témoignages clients
Cédric B. – Iceranking
« Excellente formation! »