SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
Microservices avec Spring Cloud
Florian Beaufumé
09/2019
• Architecte logiciel et expert Java
• Freelance
• Brown bag lunch
• @fbeaufume
Florian Beaufumé
Monolithe vs microservices
Un modèle d'architecture basé sur l'utilisation de services
indépendants, limités, orientés métier et communicants
Microservices
• Cycles de développement indépendants
• Builds et livraisons simplifiés et moins risqués
• Isolation runtime
• Configuration fine
• Scaling horizontal fin
• Robustesse
• Migrations techniques
• Programmation polyglotte
Bénéfices
• Identification et découper les services et données
• Communications entre services
• Cohérence des données
• Event driven
• Automatisation
• Besoins de monitoring
Difficultés
Spring Kubernetes & Istio
Boot Cloud Netflix
Solutions
Spring Cloud
Client
applications
Gateway
Order Stock
MongoH2
Service
registry
Config server
Git
Spring Boot Spring Boot
Spring Boot
Spring Cloud Gateway
Spring Boot
Netflix Eureka
Spring Boot
Spring Cloud Config
Lookup
Register
Get config
8081 8082
80808888
8761
Architecture
Spring Cloud Netflix
https://github.com/fbeaufume/microshop
pom.xml
main
application.yml
Config server
http://localhost:8888/order/default
Service registry
pom.xml
main
http://localhost:8761/
http://localhost:8761/eureka/apps/order
Microservice métier
pom.xml
boostrap.xml
Load balancer et circuit breaker
@Configuration
RestConfiguration
@Service
OrderService
2
3
4
1
Gateway
pom.xml
main
application.yml
Routage
• Par cookie
• Par header
• Par host
• Par date
• Etc.
Filtrage
Served GET 'http://localhost:8080/api/orders' as 200 in 16 msec
2
3
4
5
1
Traces distribuées
Gateway
Order
Stock
pom.xml
http://localhost:9411/zipkin/
Zipkin
application.yml
@Component @Aspect ZipkinTracingAspect
Interception des méthodes
1
2
3
5
4
Spring Boot Admin
http://localhost:8090/
Merci
@fbeaufume

Contenu connexe

Tendances

Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesENSET, Université Hassan II Casablanca
 
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
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartisHeithem Abbes
 
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
 
Angular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHTAngular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHTtayebbousfiha1
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesLilia Sfaxi
 
Développement d'applications pour la plateforme Java EE
Développement d'applications pour la plateforme Java EEDéveloppement d'applications pour la plateforme Java EE
Développement d'applications pour la plateforme Java EESabri Bouchlema
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)Yacine Rezgui
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsEric Hogue
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiENSET, Université Hassan II Casablanca
 

Tendances (20)

Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
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
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
 
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
 
Angular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHTAngular Framework présentation PPT LIGHT
Angular Framework présentation PPT LIGHT
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
Support JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.YoussfiSupport JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.Youssfi
 
Angular Avancé
Angular AvancéAngular Avancé
Angular Avancé
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Développement d'applications pour la plateforme Java EE
Développement d'applications pour la plateforme Java EEDéveloppement d'applications pour la plateforme Java EE
Développement d'applications pour la plateforme Java EE
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec Jenkins
 
Support NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDBSupport NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDB
 
Spring ioc
Spring iocSpring ioc
Spring ioc
 
Support distributed computing and caching avec hazelcast
Support distributed computing and caching avec hazelcastSupport distributed computing and caching avec hazelcast
Support distributed computing and caching avec hazelcast
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 

Similaire à Microservices avec Spring Cloud

Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursMicrosoft
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Gerard Konan
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
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
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSGerard Konan
 
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
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Microsoft
 
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...Publicis Sapient Engineering
 
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
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeMicrosoft
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...Publicis Sapient Engineering
 
Xebicon architectures microservices azure v1.0
Xebicon   architectures microservices azure v1.0Xebicon   architectures microservices azure v1.0
Xebicon architectures microservices azure v1.0Michel HUBERT
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiAZUG FR
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiSamir Arezki ☁
 
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonitasoft
 
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteAZUG FR
 
Joe Mobile sur le Cloud - DevoxxFR 2013
Joe Mobile sur le Cloud - DevoxxFR 2013Joe Mobile sur le Cloud - DevoxxFR 2013
Joe Mobile sur le Cloud - DevoxxFR 2013Cyrille Le Clerc
 

Similaire à Microservices avec Spring Cloud (20)

Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeurs
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
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
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaS
 
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
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
 
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...
XebiCon'16 : Cloud et Maturité de SI. Par Stéphane Teyssier, Consultant chez ...
 
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
 
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...
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
 
Digicomp Citrix Day 2015 : Mobility
Digicomp Citrix Day 2015 : MobilityDigicomp Citrix Day 2015 : Mobility
Digicomp Citrix Day 2015 : Mobility
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
 
Xebicon architectures microservices azure v1.0
Xebicon   architectures microservices azure v1.0Xebicon   architectures microservices azure v1.0
Xebicon architectures microservices azure v1.0
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
 
XebiConFr 15 - Le challenge des microservices
XebiConFr 15 - Le challenge des microservicesXebiConFr 15 - Le challenge des microservices
XebiConFr 15 - Le challenge des microservices
 
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
 
Joe Mobile sur le Cloud - DevoxxFR 2013
Joe Mobile sur le Cloud - DevoxxFR 2013Joe Mobile sur le Cloud - DevoxxFR 2013
Joe Mobile sur le Cloud - DevoxxFR 2013
 

Plus de Florian Beaufumé

Programmation réactive avec Spring 5 et Reactor
Programmation réactive avec Spring 5 et ReactorProgrammation réactive avec Spring 5 et Reactor
Programmation réactive avec Spring 5 et ReactorFlorian Beaufumé
 
Programmation concurrente en Java
Programmation concurrente en JavaProgrammation concurrente en Java
Programmation concurrente en JavaFlorian Beaufumé
 
Multitenancy avec JPA ou Hibernate
Multitenancy avec JPA ou HibernateMultitenancy avec JPA ou Hibernate
Multitenancy avec JPA ou HibernateFlorian Beaufumé
 
Nouveautés et limitations de JMS 2
Nouveautés et limitations de JMS 2Nouveautés et limitations de JMS 2
Nouveautés et limitations de JMS 2Florian Beaufumé
 

Plus de Florian Beaufumé (6)

Nouveautés de java 8
Nouveautés de java 8Nouveautés de java 8
Nouveautés de java 8
 
Programmation réactive avec Spring 5 et Reactor
Programmation réactive avec Spring 5 et ReactorProgrammation réactive avec Spring 5 et Reactor
Programmation réactive avec Spring 5 et Reactor
 
Programmation concurrente en Java
Programmation concurrente en JavaProgrammation concurrente en Java
Programmation concurrente en Java
 
Multitenancy avec JPA ou Hibernate
Multitenancy avec JPA ou HibernateMultitenancy avec JPA ou Hibernate
Multitenancy avec JPA ou Hibernate
 
Nouveautés et limitations de JMS 2
Nouveautés et limitations de JMS 2Nouveautés et limitations de JMS 2
Nouveautés et limitations de JMS 2
 
WebSocket avec Java EE 7
WebSocket avec Java EE 7WebSocket avec Java EE 7
WebSocket avec Java EE 7
 

Microservices avec Spring Cloud