Formation en Développement: Quarkus - Développement Agile - Ascent Formation
Retour aux formations
Développement

Quarkus - Développement Agile

3 jour(s)21h

Description

Objectif de formation : Cette formation vise à fournir aux participants une maîtrise approfondie de Quarkus pour le développement d'applications Java modernes basées sur des microservices, en mettant l'accent sur les déploiements cloud via Kubernetes et la compilation native pour optimiser les performances et l'efficacité

Objectifs pédagogiques

  • Acquérir les connaissances pour développer et déployer des microservices en utilisant Quarkus
  • Implémenter des communications sécurisées et efficaces entre microservices
  • Appliquer les principes de la tolérance aux pannes pour améliorer la robustesse des applications
  • Déployer et superviser des applications Quarkus dans un environnement Kubernetes

Public concerné

Développeurs Java
Chefs de projet techniques
Professionnels IT

Prérequis

Bonnes connaissances de Java/Java EE
Expérience de base avec les principes des microservices et des conteneurs Docker est recommandée

Déroulé du programme

1

Introduction à Quarkus et les microservices (3 heures)

3h
  • Un nouveau framework Java
  • La comparaison avec Spring Boot.
  • Quid de Java EE et Jakarta EE
  • Les architectures microservices
  • Le standard MicroProfile
  • Travaux pratiques : Découverte de l'environnement
2

Premiers pas avec Quarkus (4 heures)

4h
  • Création et configuration d'un projet "Hello World"
  • Exploration de l'outillage pour le développement, débogage et test avec Quarkus
  • Introduction à l'environnement Docker et les extensions Quarkus
  • Panorama des extensions Quarkus
  • Travaux pratiques
3

Prise en main de l’environnement et développement d’un premier microservice, expérimentation du live coding, du débogage, du test continu

4

Communication HTTP/RESTful et GraphQL (3 heures)

3h
  • Principes et mise en œuvre de REST avec Jakarta RESTful
  • Introduction et utilisation de GraphQL
  • Documentation des endpoints
  • Écriture d'un client HTTP
  • Sécurité & authentification
  • Implémentation des "Long Running Actions"
  • Travaux pratiques : Les participants créent deux microservices. Le premier microservice sert des données via une API RESTful, et le second utilise GraphQL pour interroger le premier service.
5

Tolérance à la panne (3 heures)

3h
  • Introduction aux principes de résilience et programmation défensive
  • Implémentation des patterns de tolérance à la panne, comme Circuit Breaker et Bulkhead
  • Travaux pratiques : Les participants implémentent & testent plusieurs patterns de résilience, notamment le Circuit Breaker et le Bulkhead, dans un microservice existant
6

Communication Orientée Message (3 heures)

3h
  • Concepts de programmation réactive et communication asynchrone
  • Transactions
  • Pattern Saga
  • Utilisation de systèmes de messagerie tels que ActiveMQ et Kafka
  • Travaux pratiques : Mise en place d'une communication orientée message avec Kafka entre deux microservices
7

Mise en Production (3 heures)

3h
  • Configuration et stratégies de construction des images pour les conteneurs
  • Présentation d'HotSpot et de GraalVM
  • Compilation AOT et déploiement sur Kubernetes
  • Travaux pratiques : Construction des images Docker Open Container Initiative (OCI) pour un déploiement sur un orchestrateur cloud. : classiques (OpenJDK) et Ahead Of Time (AOT, GraalVM).
8

Supervision en Production (2 heures)

2h
  • Mise en place de Health Checks, gestion des logs, et utilisation d'OpenTelemetry
  • Collecte et affichage des métriques avec des outils comme Prometheus
  • Travaux pratiques : Définition d'un Endpoint Health check personnalisé, recueil et affichage des données de télémétrie dans Prometheus.

Informations

Durée

3 jour(s)

21h

Tarif

Sur demande