Formation Développer des micro-services avec Spring et Docker - Leuville Objects

Développer des micro-services avec Spring et Docker

Description

Les architectures microservices présentent de nombreux avantages mais nécessitent une grande maturité dans les pratiques de développement, de déploiement et de maintien en conditions opérationnelles. Vous mettrez en oeuvre dans cette formation les technologies essentielles pour bâtir une telle architecture.

Objectifs

A l'issue de cette formation, les participants seront en mesure de:

  • Comprendre la démarche et l'organisation sous-jacentes à la notion de micro-service
  • Pouvoir choisir un modèle d'architecture adapté à ses besoins
  • Développer et tester une API REST de type Swagger/OpenAPI
  • Exécuter un micro-service avec Spring Boot
  • Déployer des services au sein de conteneurs Docker
  • Appréhender les tâches de supervision d'une architecture basée sur les micro-services

Méthodes pédagogiques

Formation avec un minimum de 50% de travaux pratiques. La session alterne les présentations théoriques avec les exercices en groupe ou individuels. Des versions numériques de tous les documents sont remises aux participants (support de cours, énoncés, corrigés).

Participants

Ce cours s'adresse à des développeurs Spring souhaitant développer des architectures basées sur les micro-services.

Pré requis

  • La connaissance préalable des bases Spring est nécessaire.
  • Une pratique des commandes de base Linux est conseillée.

Programme

L'approche micro-services

Présentation de la notion de micro-service.

  • Les méthodes et organisations des équipes de développement.
  • Approche monolithique, avantages et inconvénients. Alternatives.
  • Le lien avec le DevOps et l'Agilité.
  • L'intégration et le déploiement continus.
  • Les "pizza teams"

L'architecture micro-services

Caractéristiques d'une architecture micro-services.

  • Caractéristiques principales des micro-services.
  • Les modèles architecturaux sous-jacents.
  • Les interfaces et collaborations entre services. Quid de l'orchestration ?
  • La problématique de l'accès aux données.
  • Les acteurs et utilisateurs principaux.

Mise en pratique: comparaison de différentes propositions de modèles architecturaux.

Les échanges entre micro-services REST

Présentation des différents modèles d'échanges possibles.

  • Principes de base et rappels HTTP/REST.
  • Choix du style de collaboration : REST request/reply vs Publish-Subscribe Messaging.
  • Développer des services REST avec Java et Spring.
  • Le principe HATEOAS.
  • Introduction à Swagger/OpenAPI.

Mise en pratique: définir une API REST avec Swagger/OpenAPI et Spring, tester le service avec SoapUI.

Exécuter un micro-service avec Spring Boot.

Bases Spring Boot permettant de simplifier l'exécution de services.

  • Principes de base Spring Boot.
  • Caractéristiques d'un projet Spring Boot.
  • Les spécificités des applications Web/Services.
  • Le packaging de l'application.

Mise en pratique: lancer les micro-services précédemment développés avec Spring Boot.

Micro-services et conteneurs Docker.

Utilisation de Docker pour déployer des micro-services.

  • Le fonctionnement des conteneurs Docker.
  • Configurer et démarrer des conteneurs.
  • Réaliser une image Docker personnalisée.
  • Utiliser plusieurs conteneurs avec Docker Compose.

Mise en pratique: créer un conteneur personnalisé et mettre en place une architecture multi-conteneurs.

Infrastructure, administration et surveillance.

Les solutions d'infrastructure et de supervision.

  • Solutions d'infrastructure pour les microservices (Kubernetes, Mesos, Swarm).
  • Solutions Cloud (Cloud Foundry, Heroku).
  • Centralisation des logs.
  • Définition de métriques.
  • Surveillance du bon fonctionnement (Health Check).

Mise en pratique: mise en place de métriques et visualisation.

Filière

Framework Spring

Code

CP-MSVC

Durée

3 jours

Tarif

1990 € HT

Sessions

Nous contacter

01 39 50 2000