Développement d’une architecture microservices avec JHipster, Spring Boot, Spring Cloud et Netflix OSS

  • Filière :

    Architecture & Intégration

  • Sous-filière :

    SOA & MicroServices

  • Référence

    AE-JHIP

  • Durée

    2 jours (14 h)

  • Prix unitaire HT

    1 550 € HT

Description

Cette formation s’axe sur le développement d’une architecture microservices assez complexe avec la plateforme Spring Boot, Spring Cloud et Eureka Netflix.
Nous présenterons, dans un premier temps, une introduction théorique à JHipster, Spring Cloud et Spring Boot.
Dans un second temps, vous participerez à la construction de plusieurs microservices avec ces outils. De la base de données (relationnelle et orientée documents) à l’interface utilisateur (Angular ou React), en passant par la couche de persistance (Spring Data), vous mettrez en place tous les patterns de résilience liés aux microservices.

Objectifs pédagogiques

  • Apprendre à prendre en main les architectures microservices avec Spring Cloud
  • Utiliser pleinement toutes les fonctionnalités et profiter de l’expérience de JHipster dans la mise en œuvre d’une architecture microservice

Public cible

  • Architectes
  • Développeurs
  • Chefs de projets

Pré-requis

Maîtrise du langage Java SE (11+) ou autre langage de programmation orienté objet et des concepts de base de Spring, JPA et Angular

Programme de la formation

Introduction à JHipster

  • Qu’est ce que JHipster ?
  • Technologies utilisées : Spring Boot, Angular et React
  • Outillage généré
  • Bonnes pratiques d’utilisation de JHipster
  • Installation
  • Présentation du sous générateur d’entités (JDL)

Positionnement de Spring Cloud

  • Introduction
  • Positionnement
  • 12 Factors Apps
  • Spring spirit
  • Gains attendus

Rappel des concepts d’architecture

  • Architecture distribuée
  • Architecture microservices
  • Notion de Service Discovery
  • Notion de Service de Configuration
  • Communication : synchrone et asynchrone
  • Communication : politiques de routage
  • Tolérance à l’erreur
  • Supervision et traçabilité

Principaux projets

  • Spring Cloud Config
  • Spring Cloud Eureka/Consul/Zookeeper
  • Spring Cloud Gateway
  • Spring Cloud Sleuth

Génération des microservices

  • Architecture
  • Générer le microservice CRM
  • Démarrer le registre JHipster
  • Démarrer le micro service CRM
  • Créer les entités pour le microservice CRM
  • Générer le microservice Accountancy
  • Démarrer le micro service Accountancy
  • Créer les entités pour le microservice Accountancy
  • Générer la Gateway
  • Démarrer la Gateway
  • Démarrer l’architecture avec Docker Compose
  • JHipster Console/Zipkin

Développement des microservices

  • API first avec Swagger / OpenAPI
  • Spring Cloud Feign
  • Répartition de charge avec Spring Cloud Loadbalancer
  • Tolérance à l’erreur avec Resilience4j
  • Centralisation de la configuration avec Spring Cloud Config
  • Sécurisation des microservices (JWT)
  • Cache distribué avec Hazelcast
  • Limitation de débit avec Bucket4j
  • Tests de montée en charge

Architecture alternative

  • Microservice avec Consul et Keycloak
  • Eureka vs Consul
  • Keycloak
  • Sécurisation des microservices (OAuth2)

Qualité

Cette formation est accessible aux personnes en situation de handicap, nous contacter en cas de besoin d’informations complémentaires.

Programme mis à jour le