SlideShare une entreprise Scribd logo
1  sur  33
Microservices :
Nouvelle architecture logicielle
CWIN 2017
Présenté par : Ghofrane BENAZIZ
2Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Sommaire
Les architectures monolithiques et leurs problèmes
Présentation de l’architecture Microservices
Les principes du Microservices
La mise en œuvre
Quels outils?
Quelle organisation ?
Les limites des Microservices
Conclusion
3Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les architectures monolithiques et leurs
problèmes
4Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les architectures monolithiques et leurs problèmes
L’architecture monolithique est l’une des plus répandues dans les projets informatiques.
Projet de petite taille : Architecture très simple, testabilité, maintenabilité et déploiement faciles..
5Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les architectures monolithiques et leurs problèmes
Au cours de l’évolution :
Maintenabilité du code Dépendance aux technologies
Pas de frontières fortes entre les modules
Relations de dépendance plus complexes
Code de moins en mois lisible et testable
Application dépendante à certaines technologies
Technologies obligatoirement compatibles entre elles
Framework utilisé devient obsolète
La productivité et la qualité
baissent
Migration vers un nouveau peut
nécessiter la réécriture complète
de l’application
• Java : Evolutions futures
limitées aux technologies
compatibles avec la JVM
• C# : Limitations aux
technologies Microsoft
6Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les architectures monolithiques et leurs problèmes
Déploiement en continu : Application monolithique simple à déployer : toute l’application est destinée à s’exécuter sur un même
serveur.
Limitation : Déployer toute l’application, quelles que soient les modifications réellement effectuées, pose divers problèmes :
Le temps de déploiement s’allonge,
Le déploiement continu devient plus complexe
Les risques associés augmentent à chaque déploiement : perte de productivité
Développement Tests et intégration Recette Mise en production
Intégration continue
(développement)
Déploiement continue
(infrastructures)
7Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les architectures monolithiques et leurs problèmes
Scalabilité: Lorsque la charge d’une application augmente, la scalabilité de l’application devient un point critique :
Les différents composants de l’application n’ont pas les mêmes besoins en ressource (processeur, mémoire, E/S,...)
Scaler une application monolithique peut entraîner une augmentation de la consommation des ressources
conséquentes de manière inutile.
8Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Présentation de l’architecture
Microservices
9Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Présentation de l’architecture microservices
Isoler chaque fonctionnalité
dans un composant qui lui est
propre. => Service
Les différents services
communiquent au travers du
réseau plutôt que par des
appels de fonctions dans un
processus.
Chaque unité indépendante a
un cycle de vie et une
responsabilité propre.
Répond à des problèmes
récurrents que posent les
architectures monolithiques.
10Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
11Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
L’application devient un SI, dont
le microservice constitue l'unité
élémentaire.
Permettre aux services de
scaler facilement et
distinctement.
Il devient aussi possible d’allouer les ressources
souhaitées à chaque type de service
Chaque service peut ainsi utiliser les
technologies les plus adaptées à son
besoin
Elles ont chacune leur propre base
de code de données
Ces unités sont strictement
indépendantes les unes des
autres.
Une nouvelle échelle :
12Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
La présence d’une
anomalie sur une
fonctionnalité ne
bloque pas
l’évolution ou le
déploiement d’une
autre
l’évolution en
question ne
porte que sur le
code d’un
service en
particulier.
Mise à jour et
redéploiement
uniquement du service
impacté car il s’exécute
dans un processus
isolé.
Les autres services
ne seront pas
impactés.
Evolutivité
Lorsqu’une fonctionnalité précise du SI doit être modifiée :
13Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Pour que le système fonctionne correctement, il est donc nécessaire que les microservices communiquent entre eux.
Les deux modes de communication les plus courants sont celles de type :
une architecture microservices va tendre vers une architecture réactive, à base d’évènements
déclenchés et écoutés par les services.
Communication
14Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Microservices en REST
Un des moyens les plus simples de faire communiquer ces services entre eux est de le faire à travers le protocole HTTP via une API REST :
Chaque partie métier
de notre application
représente un
service indépendant
exposant sa propre
interface.
Les autres services
du système
communiqueront
avec lui.
Gateway
Inventory
Manager
Service
Back in
Stock
Notifier
Service
Email
Service
Subscriber
manager
Service
REST Request
REST Response
15Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Microservices en REST
Ce type d’architecture permet de mettre en place simplement des microservices grâce à un système de communication
couramment utilisé.
Néanmoins ce système révèle plusieurs problèmes :
Les appels REST sont
synchrones, si un service
ralentit, l’ensemble du système
s’en trouve impacté
La multiplication des services
peut entraîner un effet
« spaghetti » entre les liens de
communication
Concevoir une architecture reposant sur
des messages asynchrones
Un service consomme un autre en
communicant une adresse de callback
Cette adresse de callback sera appelée
lorsque le traitement sera terminéSolution
16Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Microservices à travers un BUS
La communication par bus de messages est fortement poussée dans les architectures microservices. Elle apporte une réelle souplesse.
Chaque service envoie des messages sur
le bus qui seront consommés ensuite par
d’autres services
Chaque service ne connait que le bus de
messages comme intermédiaire.
Les liens directs entre services sont
coupés.
Tout ce qui se passe dans le système est asynchrone.
17Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Microservices à travers un BUS
Le bus d’événements est basé sur le protocole AMQP (Advanced Message Queing Protocol)
Solutions de bus d’événements basés sur AMQP :
Pivotal Apach Apache JBoss
RabbitMQ : le plus utilisé et documenté
18Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les principes des microservices
Cet asynchronisme présente plusieurs avantages
Le système devient résistant à la lenteur
Le système devient tolérant à la panne
Le système devient facilement scalable.
Trois instances du
même microservice
Utiliser le loadbalancer
pour équilibrer la charge
19Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Force Capacité Surveillane
Les principes des microservices
Tolérance et monitoring
Surveillance
d’indicateurs métiers :
transactions validées,
en erreur, quantité de
commandes, ...
Une des
grandes forces
des
architectures
microservices :
sa robustesse
et sa tolérance
aux pannes
Le service est
alors capable de
fonctionner à la
fois en mode
nominal et en
mode dégradé.
Malgré cette
tolérance, le
système doit
être surveillé
en permanence
20Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Quels Outils ?
21Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Comment coder?
Plateformes logicielles
Environnement de développement
22Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Comment isoler?
Isoler un microservice
Utilisation de techniques de virtualisation : Trois grandes techniques s’affrontent :
23Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Comment isoler?
Isoler un microservice :
Les outils pour isoler les microservices:
Construire des
machines
virtuelles
• Hyperviseurs : Vmware vSphere, Microsoft
HyperV, KVM, Oracle VirualBox, Vmware
Player,..
Construire des
conteneurs
• Conteneurs : Docker, CoreOS Rocket, LXC,… Docker : Le plus tendance
Plus simple à mettre en œuvre
Dispose d’un dépôt central fournissant
des images prêtes à l’emploi
Logiciel Libre
24Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Comment isoler?
Isoler un microservice :
Les outils pour isoler les microservices :
Comparatif sur les performances
25Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
La mise en œuvre : Quelle organisation ?
26Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Organisation d’équipe
Une architecture microservices induit
des micro-équipes, en interaction
constante.
Chaque microservice a sa propre équipe
de développement
L’équipe de développement orientée
fonctionnalité est réduite et
pluridisciplinaire
Il est important de garder un contrôle et
une vision d’ensemble, grâce, par
exemple, à une cartographie de son SI.
27Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Les limites
28Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Taille des services
Il est important de trouver un juste milieux entre des services imposants et des services trop petits
Ceci va regrouper la complexité des services en
un seul qui va devenir plus difficilement
maintenable.
La communication de ces nombreux services
sera plus complexe
Regrouper plusieurs “petits” services en un seul « macroservice »
Tenter le « nanoservice » en transformant chaque méthode d’une application
monolithique en microservice
Taille des services : En
terme de code,
de nombre de fonctions, …
Le plus grand principe des microservices concerne la taille de ces services.
Pièges à éviter :
29Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Profusion des technologies
Veiller à ne pas
multiplier les langages
inutilement
Eviter de multiplier le nombre
de bases différentes
Garder un type de base relationnelle et un
type de base NoSQL peut être un bon
compromis
30Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Conclusion
31Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
Conclusion
Les architectures orientées services ont piloté la mise en place des SI de ces 10 dernières années.
Solution proposée
par les
microservices :
• Diminuer
l’échelle de
l’architecture
Isolation nécessaire
des fonctionnalités
à différents niveaux
• Code
• Données
• Déploiement
Nécessité d’un certain
investissement
• Technologique
• Méthodologique
(DevOps,
Craftmanship,..°
• Organisationnel
(Agilité, Feature
team)
Les microservices
ne constituent pas
une recette
universelle :
• Exp :Système
peu complexe
dont le rythme
d’évolution est
faible
Les microservices
ne garantissent
pas une
simplification du
système global
mais permettent la
simplification de
son évolution
32Copyright © Capgemini 2017. All Rights Reserved.
Microservices : Nouvelle architecture logicielle
MERCI
www.capgemini.com
The information contained in this presentation is proprietary.
© 2017 Capgemini. All rights reserved. Rightshore® is a trademark belonging to Capgemini.
A propos de Capgemini
Avec plus de 190 000 collaborateurs, Capgemini est présent dans
plus de 40 pays et célèbre son cinquantième anniversaire en
2017. Le Groupe est l'un des leaders mondiaux du conseil, des
services informatiques et de l'infogérance et a réalisé en 2016 un
chiffre d'affaires de 12,5 milliards d'euros. Avec ses clients,
Capgemini conçoit et met en œuvre les solutions business,
technologiques et digitales qui correspondent à leurs besoins et
leur apportent innovation et compétitivité. Profondément
multiculturel, Capgemini revendique un style de travail qui lui est
propre, la « Collaborative Business ExperienceTM », et s’appuie
sur un mode de production mondialisé, le « Rightshore® ».
Plus d’informations sur : www.capgemini.com
Rightshore® est une marque du groupe Capgemini

Contenu connexe

Tendances

Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring CloudFlorian Beaufumé
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebHarrathi Mohamed
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceAHMEDBELGHITH4
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Ayoub Mkharbach
 
Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Ayed CHOKRI
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développementDonia Hammami
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
Plateforme e-learning PHP
Plateforme e-learning PHP Plateforme e-learning PHP
Plateforme e-learning PHP Saâd Zerhouni
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services webCHOUAIB EL HACHIMI
 
Rapport de stage pfe odoo 8
Rapport de stage pfe odoo 8 Rapport de stage pfe odoo 8
Rapport de stage pfe odoo 8 ayoub damir
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI Heithem Abbes
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSiwar GUEMRI
 
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Amira Hakim
 
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Nawres Farhat
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiDonia Hammami
 

Tendances (20)

Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring Cloud
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerce
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...
 
Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Plateforme e-learning PHP
Plateforme e-learning PHP Plateforme e-learning PHP
Plateforme e-learning PHP
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
Rapport de stage pfe odoo 8
Rapport de stage pfe odoo 8 Rapport de stage pfe odoo 8
Rapport de stage pfe odoo 8
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI
 
Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1 Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logiciel
 
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
 
Présentation cloud computing
Présentation cloud computingPrésentation cloud computing
Présentation cloud computing
 
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
Présentation PFE "Refonte et déploiement d’une solution de messagerie en util...
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 

Similaire à CWIN17 Morocco / Microservices architecture ghofrane benaziz

AtelierENP - 12 décembre 2012
AtelierENP - 12 décembre 2012AtelierENP - 12 décembre 2012
AtelierENP - 12 décembre 2012CCI Yonne
 
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...OCTO Technology
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
Conference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieConference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieZenika
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec dockergcatt
 
IBM Bluemix - Next-Generation Cloud App Development Platform
IBM Bluemix - Next-Generation Cloud App Development PlatformIBM Bluemix - Next-Generation Cloud App Development Platform
IBM Bluemix - Next-Generation Cloud App Development PlatformJawad Jari, Enterprise Architect
 
srep_cours_01.pdf
srep_cours_01.pdfsrep_cours_01.pdf
srep_cours_01.pdfSamirAwad14
 
Ms private cloud strategy by Stephane Consalvi
Ms private cloud strategy by Stephane ConsalviMs private cloud strategy by Stephane Consalvi
Ms private cloud strategy by Stephane ConsalviTechdaysTunisia
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hecYves LE CLEACH
 
Jdruais bluemix meetup rennes- 20160622 - introduction à bluemix
Jdruais  bluemix meetup rennes- 20160622 - introduction à bluemixJdruais  bluemix meetup rennes- 20160622 - introduction à bluemix
Jdruais bluemix meetup rennes- 20160622 - introduction à bluemixJérôme Druais
 
Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Marius Zaharia
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiquesJohan Moreau
 
L'évolution vers le (Dev)NoOps
L'évolution vers le (Dev)NoOpsL'évolution vers le (Dev)NoOps
L'évolution vers le (Dev)NoOpsGeorgeot Cédric
 
Cellenza microservices - tour d'horizon - v0.1
Cellenza   microservices - tour d'horizon - v0.1Cellenza   microservices - tour d'horizon - v0.1
Cellenza microservices - tour d'horizon - v0.1Radoine Douhou
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction Meetup
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction MeetupIBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction Meetup
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction MeetupIBM France Lab
 
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel Arkea
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel ArkeaCWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel Arkea
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel ArkeaCapgemini
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESSOAT
 

Similaire à CWIN17 Morocco / Microservices architecture ghofrane benaziz (20)

livre-blanc-microservices.pdf
livre-blanc-microservices.pdflivre-blanc-microservices.pdf
livre-blanc-microservices.pdf
 
AtelierENP - 12 décembre 2012
AtelierENP - 12 décembre 2012AtelierENP - 12 décembre 2012
AtelierENP - 12 décembre 2012
 
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
Conference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieConference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partie
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec docker
 
IBM Bluemix - Next-Generation Cloud App Development Platform
IBM Bluemix - Next-Generation Cloud App Development PlatformIBM Bluemix - Next-Generation Cloud App Development Platform
IBM Bluemix - Next-Generation Cloud App Development Platform
 
srep_cours_01.pdf
srep_cours_01.pdfsrep_cours_01.pdf
srep_cours_01.pdf
 
Ms private cloud strategy by Stephane Consalvi
Ms private cloud strategy by Stephane ConsalviMs private cloud strategy by Stephane Consalvi
Ms private cloud strategy by Stephane Consalvi
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
 
Jdruais bluemix meetup rennes- 20160622 - introduction à bluemix
Jdruais  bluemix meetup rennes- 20160622 - introduction à bluemixJdruais  bluemix meetup rennes- 20160622 - introduction à bluemix
Jdruais bluemix meetup rennes- 20160622 - introduction à bluemix
 
Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018
 
IBM Bluemix
IBM BluemixIBM Bluemix
IBM Bluemix
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiques
 
L'évolution vers le (Dev)NoOps
L'évolution vers le (Dev)NoOpsL'évolution vers le (Dev)NoOps
L'évolution vers le (Dev)NoOps
 
Cellenza microservices - tour d'horizon - v0.1
Cellenza   microservices - tour d'horizon - v0.1Cellenza   microservices - tour d'horizon - v0.1
Cellenza microservices - tour d'horizon - v0.1
 
IBM Bluemix : La plate-forme d’innovation numérique
IBM Bluemix : La plate-forme d’innovation numérique IBM Bluemix : La plate-forme d’innovation numérique
IBM Bluemix : La plate-forme d’innovation numérique
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction Meetup
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction MeetupIBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction Meetup
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction Meetup
 
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel Arkea
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel ArkeaCWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel Arkea
CWIN17 Paris / La mise en oeuvre de la Blockchain chez Crédit Mutuel Arkea
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
 

Plus de Capgemini

Top Healthcare Trends 2022
Top Healthcare Trends 2022Top Healthcare Trends 2022
Top Healthcare Trends 2022Capgemini
 
Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022Capgemini
 
Commercial Banking Trends book 2022
Commercial Banking Trends book 2022Commercial Banking Trends book 2022
Commercial Banking Trends book 2022Capgemini
 
Top Trends in Payments 2022
Top Trends in Payments 2022Top Trends in Payments 2022
Top Trends in Payments 2022Capgemini
 
Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022Capgemini
 
Retail Banking Trends book 2022
Retail Banking Trends book 2022Retail Banking Trends book 2022
Retail Banking Trends book 2022Capgemini
 
Top Life Insurance Trends 2022
Top Life Insurance Trends 2022Top Life Insurance Trends 2022
Top Life Insurance Trends 2022Capgemini
 
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーですキャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーですCapgemini
 
Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021Capgemini
 
Life Insurance Top Trends 2021
Life Insurance Top Trends 2021Life Insurance Top Trends 2021
Life Insurance Top Trends 2021Capgemini
 
Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021Capgemini
 
Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021Capgemini
 
Top Trends in Payments: 2021
Top Trends in Payments: 2021Top Trends in Payments: 2021
Top Trends in Payments: 2021Capgemini
 
Health Insurance Top Trends 2021
Health Insurance Top Trends 2021Health Insurance Top Trends 2021
Health Insurance Top Trends 2021Capgemini
 
Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021Capgemini
 
Capgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous PlanningCapgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous PlanningCapgemini
 
Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020Capgemini
 
Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020Capgemini
 
Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020Capgemini
 
Top Trends in Payments: 2020
Top Trends in Payments: 2020Top Trends in Payments: 2020
Top Trends in Payments: 2020Capgemini
 

Plus de Capgemini (20)

Top Healthcare Trends 2022
Top Healthcare Trends 2022Top Healthcare Trends 2022
Top Healthcare Trends 2022
 
Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022
 
Commercial Banking Trends book 2022
Commercial Banking Trends book 2022Commercial Banking Trends book 2022
Commercial Banking Trends book 2022
 
Top Trends in Payments 2022
Top Trends in Payments 2022Top Trends in Payments 2022
Top Trends in Payments 2022
 
Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022
 
Retail Banking Trends book 2022
Retail Banking Trends book 2022Retail Banking Trends book 2022
Retail Banking Trends book 2022
 
Top Life Insurance Trends 2022
Top Life Insurance Trends 2022Top Life Insurance Trends 2022
Top Life Insurance Trends 2022
 
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーですキャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
 
Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021
 
Life Insurance Top Trends 2021
Life Insurance Top Trends 2021Life Insurance Top Trends 2021
Life Insurance Top Trends 2021
 
Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021
 
Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021
 
Top Trends in Payments: 2021
Top Trends in Payments: 2021Top Trends in Payments: 2021
Top Trends in Payments: 2021
 
Health Insurance Top Trends 2021
Health Insurance Top Trends 2021Health Insurance Top Trends 2021
Health Insurance Top Trends 2021
 
Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021
 
Capgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous PlanningCapgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous Planning
 
Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020
 
Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020
 
Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020
 
Top Trends in Payments: 2020
Top Trends in Payments: 2020Top Trends in Payments: 2020
Top Trends in Payments: 2020
 

CWIN17 Morocco / Microservices architecture ghofrane benaziz

  • 1. Microservices : Nouvelle architecture logicielle CWIN 2017 Présenté par : Ghofrane BENAZIZ
  • 2. 2Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Sommaire Les architectures monolithiques et leurs problèmes Présentation de l’architecture Microservices Les principes du Microservices La mise en œuvre Quels outils? Quelle organisation ? Les limites des Microservices Conclusion
  • 3. 3Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les architectures monolithiques et leurs problèmes
  • 4. 4Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les architectures monolithiques et leurs problèmes L’architecture monolithique est l’une des plus répandues dans les projets informatiques. Projet de petite taille : Architecture très simple, testabilité, maintenabilité et déploiement faciles..
  • 5. 5Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les architectures monolithiques et leurs problèmes Au cours de l’évolution : Maintenabilité du code Dépendance aux technologies Pas de frontières fortes entre les modules Relations de dépendance plus complexes Code de moins en mois lisible et testable Application dépendante à certaines technologies Technologies obligatoirement compatibles entre elles Framework utilisé devient obsolète La productivité et la qualité baissent Migration vers un nouveau peut nécessiter la réécriture complète de l’application • Java : Evolutions futures limitées aux technologies compatibles avec la JVM • C# : Limitations aux technologies Microsoft
  • 6. 6Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les architectures monolithiques et leurs problèmes Déploiement en continu : Application monolithique simple à déployer : toute l’application est destinée à s’exécuter sur un même serveur. Limitation : Déployer toute l’application, quelles que soient les modifications réellement effectuées, pose divers problèmes : Le temps de déploiement s’allonge, Le déploiement continu devient plus complexe Les risques associés augmentent à chaque déploiement : perte de productivité Développement Tests et intégration Recette Mise en production Intégration continue (développement) Déploiement continue (infrastructures)
  • 7. 7Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les architectures monolithiques et leurs problèmes Scalabilité: Lorsque la charge d’une application augmente, la scalabilité de l’application devient un point critique : Les différents composants de l’application n’ont pas les mêmes besoins en ressource (processeur, mémoire, E/S,...) Scaler une application monolithique peut entraîner une augmentation de la consommation des ressources conséquentes de manière inutile.
  • 8. 8Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Présentation de l’architecture Microservices
  • 9. 9Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Présentation de l’architecture microservices Isoler chaque fonctionnalité dans un composant qui lui est propre. => Service Les différents services communiquent au travers du réseau plutôt que par des appels de fonctions dans un processus. Chaque unité indépendante a un cycle de vie et une responsabilité propre. Répond à des problèmes récurrents que posent les architectures monolithiques.
  • 10. 10Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices
  • 11. 11Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices L’application devient un SI, dont le microservice constitue l'unité élémentaire. Permettre aux services de scaler facilement et distinctement. Il devient aussi possible d’allouer les ressources souhaitées à chaque type de service Chaque service peut ainsi utiliser les technologies les plus adaptées à son besoin Elles ont chacune leur propre base de code de données Ces unités sont strictement indépendantes les unes des autres. Une nouvelle échelle :
  • 12. 12Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices La présence d’une anomalie sur une fonctionnalité ne bloque pas l’évolution ou le déploiement d’une autre l’évolution en question ne porte que sur le code d’un service en particulier. Mise à jour et redéploiement uniquement du service impacté car il s’exécute dans un processus isolé. Les autres services ne seront pas impactés. Evolutivité Lorsqu’une fonctionnalité précise du SI doit être modifiée :
  • 13. 13Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Pour que le système fonctionne correctement, il est donc nécessaire que les microservices communiquent entre eux. Les deux modes de communication les plus courants sont celles de type : une architecture microservices va tendre vers une architecture réactive, à base d’évènements déclenchés et écoutés par les services. Communication
  • 14. 14Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Microservices en REST Un des moyens les plus simples de faire communiquer ces services entre eux est de le faire à travers le protocole HTTP via une API REST : Chaque partie métier de notre application représente un service indépendant exposant sa propre interface. Les autres services du système communiqueront avec lui. Gateway Inventory Manager Service Back in Stock Notifier Service Email Service Subscriber manager Service REST Request REST Response
  • 15. 15Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Microservices en REST Ce type d’architecture permet de mettre en place simplement des microservices grâce à un système de communication couramment utilisé. Néanmoins ce système révèle plusieurs problèmes : Les appels REST sont synchrones, si un service ralentit, l’ensemble du système s’en trouve impacté La multiplication des services peut entraîner un effet « spaghetti » entre les liens de communication Concevoir une architecture reposant sur des messages asynchrones Un service consomme un autre en communicant une adresse de callback Cette adresse de callback sera appelée lorsque le traitement sera terminéSolution
  • 16. 16Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Microservices à travers un BUS La communication par bus de messages est fortement poussée dans les architectures microservices. Elle apporte une réelle souplesse. Chaque service envoie des messages sur le bus qui seront consommés ensuite par d’autres services Chaque service ne connait que le bus de messages comme intermédiaire. Les liens directs entre services sont coupés. Tout ce qui se passe dans le système est asynchrone.
  • 17. 17Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Microservices à travers un BUS Le bus d’événements est basé sur le protocole AMQP (Advanced Message Queing Protocol) Solutions de bus d’événements basés sur AMQP : Pivotal Apach Apache JBoss RabbitMQ : le plus utilisé et documenté
  • 18. 18Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les principes des microservices Cet asynchronisme présente plusieurs avantages Le système devient résistant à la lenteur Le système devient tolérant à la panne Le système devient facilement scalable. Trois instances du même microservice Utiliser le loadbalancer pour équilibrer la charge
  • 19. 19Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Force Capacité Surveillane Les principes des microservices Tolérance et monitoring Surveillance d’indicateurs métiers : transactions validées, en erreur, quantité de commandes, ... Une des grandes forces des architectures microservices : sa robustesse et sa tolérance aux pannes Le service est alors capable de fonctionner à la fois en mode nominal et en mode dégradé. Malgré cette tolérance, le système doit être surveillé en permanence
  • 20. 20Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Quels Outils ?
  • 21. 21Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Comment coder? Plateformes logicielles Environnement de développement
  • 22. 22Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Comment isoler? Isoler un microservice Utilisation de techniques de virtualisation : Trois grandes techniques s’affrontent :
  • 23. 23Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Comment isoler? Isoler un microservice : Les outils pour isoler les microservices: Construire des machines virtuelles • Hyperviseurs : Vmware vSphere, Microsoft HyperV, KVM, Oracle VirualBox, Vmware Player,.. Construire des conteneurs • Conteneurs : Docker, CoreOS Rocket, LXC,… Docker : Le plus tendance Plus simple à mettre en œuvre Dispose d’un dépôt central fournissant des images prêtes à l’emploi Logiciel Libre
  • 24. 24Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Comment isoler? Isoler un microservice : Les outils pour isoler les microservices : Comparatif sur les performances
  • 25. 25Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle La mise en œuvre : Quelle organisation ?
  • 26. 26Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Organisation d’équipe Une architecture microservices induit des micro-équipes, en interaction constante. Chaque microservice a sa propre équipe de développement L’équipe de développement orientée fonctionnalité est réduite et pluridisciplinaire Il est important de garder un contrôle et une vision d’ensemble, grâce, par exemple, à une cartographie de son SI.
  • 27. 27Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Les limites
  • 28. 28Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Taille des services Il est important de trouver un juste milieux entre des services imposants et des services trop petits Ceci va regrouper la complexité des services en un seul qui va devenir plus difficilement maintenable. La communication de ces nombreux services sera plus complexe Regrouper plusieurs “petits” services en un seul « macroservice » Tenter le « nanoservice » en transformant chaque méthode d’une application monolithique en microservice Taille des services : En terme de code, de nombre de fonctions, … Le plus grand principe des microservices concerne la taille de ces services. Pièges à éviter :
  • 29. 29Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Profusion des technologies Veiller à ne pas multiplier les langages inutilement Eviter de multiplier le nombre de bases différentes Garder un type de base relationnelle et un type de base NoSQL peut être un bon compromis
  • 30. 30Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Conclusion
  • 31. 31Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle Conclusion Les architectures orientées services ont piloté la mise en place des SI de ces 10 dernières années. Solution proposée par les microservices : • Diminuer l’échelle de l’architecture Isolation nécessaire des fonctionnalités à différents niveaux • Code • Données • Déploiement Nécessité d’un certain investissement • Technologique • Méthodologique (DevOps, Craftmanship,..° • Organisationnel (Agilité, Feature team) Les microservices ne constituent pas une recette universelle : • Exp :Système peu complexe dont le rythme d’évolution est faible Les microservices ne garantissent pas une simplification du système global mais permettent la simplification de son évolution
  • 32. 32Copyright © Capgemini 2017. All Rights Reserved. Microservices : Nouvelle architecture logicielle MERCI
  • 33. www.capgemini.com The information contained in this presentation is proprietary. © 2017 Capgemini. All rights reserved. Rightshore® is a trademark belonging to Capgemini. A propos de Capgemini Avec plus de 190 000 collaborateurs, Capgemini est présent dans plus de 40 pays et célèbre son cinquantième anniversaire en 2017. Le Groupe est l'un des leaders mondiaux du conseil, des services informatiques et de l'infogérance et a réalisé en 2016 un chiffre d'affaires de 12,5 milliards d'euros. Avec ses clients, Capgemini conçoit et met en œuvre les solutions business, technologiques et digitales qui correspondent à leurs besoins et leur apportent innovation et compétitivité. Profondément multiculturel, Capgemini revendique un style de travail qui lui est propre, la « Collaborative Business ExperienceTM », et s’appuie sur un mode de production mondialisé, le « Rightshore® ». Plus d’informations sur : www.capgemini.com Rightshore® est une marque du groupe Capgemini

Notes de l'éditeur

  1. Scaler : Un service peu sollicité peut rester sur une instance unique tandis qu’un service devant supporter une charge importante peut multiplier ses instances d’exécutions de manière transparente.
  2. Pas de bus d’intégration (ESB) car il y a de la logique et donc cela froce le couplage Utilisation d’un bus d’événements pour le faible couplage Utilisation d’un LoadBalancer pour équilibrer la charge
  3. Pas de bus d’intégration (ESB) car il y a de la logique et donc cela froce le couplage Utilisation d’un bus d’événements pour le faible couplage Utilisation d’un LoadBalancer pour équilibrer la charge
  4. - Une fois le message envoyé, le service n’attend pas de réponse immédiate. - Si un service tombe, tous les messages qui lui sont destinés sont gardés dans le bus. Il pourra reprendre le travail une fois redémarré, sans perte. - N’importe qui peut lire dans le bus, qu’il y ait une ou dix instances du même service ne change rien pour le bus et cela répartit la charge entre chaque instance
  5. décrit les conteneurs comme des environnements d'exécution légers avec la plupart des composants de base d'une machine virtuelle et les services isolés d'un système d'exploitation, conçus pour rendre le packaging facile et l'exécution des services en douceur. D’autres raisons pour lesquelles, selon Erhan, les conteneurs et Docker valent la peine d'être considérés : Avec un conteneur portable entre différentes plates-formes, la portabilité des applications peut être réalisée en plaçant l’application ainsi que toutes ses dépendances dans ce conteneur. Les conteneurs comprennent tout simplement l'application et ses dépendances qui avec la nature légère des conteneurs rend efficace l'utilisation des ressources. Les conteneurs peuvent fournir des environnements utilisateurs avec un contrôle strict des besoins en ressources sans recours à la virtualisation. La technologie de conteneurs est une nouvelle technologie émergente avec Docker comme un leader et de nombreuses grandes entreprises ont déjà signé des accords de partenariat avec Docker.
  6. Cette technique consiste à isoler l’utilisation des ressources de type processeur, mémoire et disque par application sur une même machine. Le déploiement est uniformisé et simplifié : il s’agit de déployer un conteneur par microservice Les tests d’intégration deviennent plus faciles
  7. Cette technique consiste à isoler l’utilisation des ressources de type processeur, mémoire et disque par application sur une même machine. Le déploiement est uniformisé et simplifié : il s’agit de déployer un conteneur par microservice Les tests d’intégration deviennent plus faciles
  8. Regrouper plusieurs “petits” services en un seul "macroservice" afin de faciliter la communication entre celui-ci et le reste du SI. Il est important de trouver un juste milieux entre des services imposants et des services trop petits
  9. Même si les microservices permettent l’utilisation de différents langages et différents types de bases de données: Si on en utilise trop, cette profusion rendra le passage d’un service à un autre compliqué.