Développer des Webservices

Quarkus, développer ses microservices en Java dans le Cloud

Objectifs de la formation

  • Concevoir une architecture fondée sur des microservices
  • Mise en place d’une communication orientée message entre deux microservices
  • Mettre en œuvre des systèmes de tolérance aux pannes
  • Sécuriser des microservices pour empêcher tout accès non autorisé
  • Tester et déployer une application microservices
  • Superviser une application en production


Programme de la formation

Présentation

  • Un nouveau framework Java ?
  • La comparaison avec Spring Boot.
  • Quid de Java EE et Jakarta EE ?
  • Les architectures microservices.
  • Le standard MicroProfile

Premiers pas avec Quarkus

  • Création d’un projet « Hello world ».
  • L’outillage pour le développeur (Dev Services).
  • Les processus de développement, débogage et build.
  • Le framework de test Quarkus.
  • L’environnement Docker.
  • Tour d’horizon des extensions Quarkus.

Travaux pratiques

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

Communication HTTP/RESTful et GraphQL

  • Rappels sur les principes de REST.
  • Utilisation de Jakarta RESTful.
  • Apports de GraphQL.
  • Documentation des endpoints (Open API).
  • Écriture d’un client HTTP.
  • Sécurité et authentification.
  • Implémentation des « Long Running Actions ».

Travaux pratiques

Création de services RESTful et GraphQL, interrogation depuis un deuxième microservice Quarkus.

La tolérance à la panne

  • Le principe de résilience.
  • Pourquoi est-ce important ?
  • La programmation défensive.
  • Circuit Breaker, Bulkhead.
  • Les autres patterns.

Travaux pratiques

Mise en pratique des 6 patterns de tolérance à la panne du standard MicroProfile.

Communication orientée message

  • La programmation réactive.
  • Les bénéfices et principales difficultés.
  • Comment gérer les transactions ?
  • Le pattern Saga.
  • La communication asynchrone (ActiveMQ, Kafka…).

Travaux pratiques

Mise en place d’une communication orientée message avec Kafka entre deux microservices.

Mise en production

  • Mécanisme de configuration pensé pour les conteneurs.
  • Stratégie de construction des images.
  • HotSpot et GraalVM.
  • Compilation AOT, un changement radical.
  • 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).

Supervision en production

  • Définition des Health Check.
  • Gestion des logs éparpillés.
  • OpenTelemetry le nouveau standard.
  • Les métriques systèmes et personnalisées.

Travaux pratiques

Définition d’un Endpoint Health check personnalisé, recueil et affichage des données de télémétrie dans Prometheus.

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
RabbitMQ, conception et exploitation de systèmes de messagerie asynchrones (Prev Lesson)
(Next Lesson) Web Services PHP
Back to Développer des Webservices
Public

Développeurs Java, chefs de projet Java/Java EE.

Pré-requis

Bonnes connaissances de Java/Java EE.

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.