loader image

Gate Training

logo-png
Java - Java EE

Formation Design patterns pour les micro services

3 Jours

Description de la formation Design Patterns pour Micro services

Les approches et les objectifs de la démarche DevOps ont eu une influence sur les architectures des systèmes informatiques. En conséquence, les systèmes migrent désormais d’architectures monolithiques vers des architectures micro services.

Cette migration n’est pas sans risque et de nombreuses décisions doivent être prises, concernant notamment : la décomposition du monolithe, l’organisation des données et la persistance, les modes d’interaction entre services, la sécurité, les aspects transactionnels, etc.

Pour répondre à toutes ces problématiques, il existe différents « Design patterns » (modèles de conception) spécifiques. Cette formation Design patterns pour les micro services, technique et destinée à des développeurs/architectes, vous propose de les parcourir et de les illustrer par des ateliers pratiques.

Objectifs

Objectifs opérationnels:

Connaître et appliquer les bons design patterns pour répondre aux problématiques soulevées par la migration d’une architecture monolithique vers une architecture micro services.

Objectifs pédagogiques:

À l’issue de cette formation Design Patterns pour Micro services, vous aurez acquis les connaissances nécessaires pour :

  • Comprendre les bénéfices attendus d’une architecture micro services
  • Démarrer une migration depuis une architecture monolithique
  • Appréhender les problématiques à résoudre
  • Connaître les solutions architecturales avec leurs avantages et inconvénients

À qui s’adresse cette formation ?

Public :

Ce cours Design Patterns pour Micro services cible principalement des développeurs SSII souhaitant devenir architectes.

 

Prérequis :

Pour suivre cette formation Design paternes dans des conditions optimales, il est conseillé d’avoir de solides connaissances dans au moins un langage de développement (Java par exemple).

 

Contenu du cours Design Patterns pour Micro services

Introduction aux micro services

Influence du DevOps sur les architectures et les infrastructures
Les architectures monolithiques traditionnelles : avantages et inconvénients
Les architectures micro services :
– Définition(s)
– Comparaison avec SOA
– Scalabilité, Maintenabilité et Évolutivité
– Processus et organisation des équipes
– Avantages et Inconvénients
Patterns et relations entre patterns
Les patterns et leurs relations aux micro services

Stratégies de décomposition

Approche DDD
Approche par sous-domaines
Définition des APIs

Atelier

Décomposition de l’application monolithique en micro services

Communications entre micro services

Modes d’interaction, APIs évolutives, formats des messages
Modèle RPC
Modèle asynchrone

Atelier

Mise en place des deux modèles de communication

Gestion des transactions

Le besoin pour des transactions distribuées
Le pattern Saga, Coordination
Isolation des transactions

Atelier

Illustration du pattern Saga

Logique métier

Patterns d’organisation de la logique métier
DDD, définitions des frontières métier
Publication des évènements métier, développement piloté par les événements
Saga et le modèle événementiel

Atelier

Saga et le modèle évènementiel

Requêtage

Pattern de composition d’API
CQRS Pattern
Vues CQRS

Atelier

Mise en place de vues

API Externe

Problématique de design, diversité des clients
Pattern gateway

Atelier

Mise en place de deux gateways pour deux clients différents

Tests

Tests et pipeline de déploiement
Tests unitaires : Entity, Saga, Services métier, contrôleurs, gestionnaires de messages, Mocking
Tests d’intégration
Tests d’acceptance et e2e (end-to-end)

Atelier

Tests unitaires automatisés

Production

Fonctionnalités demandées par la production
Services configurables, observables et sécurisés
Micro services Châssis, Service mesh

Atelier

Présentation Istio/Kubernetes

Travaux Pratiques

Un atelier sous forme de projet servira de fil conducteur durant toute la durée de la formation.

Réf:

0072

Tarif:

600 Dt

Niveau:

Intermédiaire

Classe à distance:

Possible

Pas de sessions disponibles