Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Microservices avec Spring Cloud
Search
Florian Beaufumé
September 01, 2019
Programming
0
53
Microservices avec Spring Cloud
Introduction aux microservices et exemple de mise en oeuvre avec Spring Cloud.
Florian Beaufumé
September 01, 2019
Tweet
Share
More Decks by Florian Beaufumé
See All by Florian Beaufumé
Programmation réactive avec Spring 5 et Reactor
fbeaufume
0
79
Programmation concurrente en Java
fbeaufume
0
46
Nouveautés de Java 8
fbeaufume
0
61
WebSocket avec Java EE 7
fbeaufume
0
40
Other Decks in Programming
See All in Programming
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
210
Streamlitで実現できるようになったこと、実現してくれたこと
ayumu_yamaguchi
2
230
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
3
1.7k
階層化自動テストで開発に機動力を
ickx
1
440
構造化・自動化・ガードレール - Vibe Coding実践記 -
tonegawa07
0
150
新しいモバイルアプリ勉強会(仮)について
uetyo
1
190
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
650
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
860
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
820
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
130
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
0
190
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
250
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Making Projects Easy
brettharned
117
6.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
We Have a Design System, Now What?
morganepeng
53
7.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Producing Creativity
orderedlist
PRO
346
40k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
Transcript
Microservices avec Spring Cloud Florian Beaufumé @fbeaufume 09/2019 v1.1
• Architecte logiciel et expert Java • Freelance • Brown
bag lunch • @fbeaufume Florian Beaufumé
Monolithe vs microservices @fbeaufume
Un modèle d'architecture basé sur l'utilisation de services indépendants, limités,
orientés métier et communicants Microservices @fbeaufume
• 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 @fbeaufume
• 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 @fbeaufume
Spring Kubernetes & Istio Boot Cloud Netflix Solutions @fbeaufume
Spring Cloud @fbeaufume
Client applications Gateway Order Stock Mongo H2 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 8080 8888 8761 Architecture Spring Cloud Netflix @fbeaufume
https://github.com/fbeaufume/microshop
pom.xml main application.yml Config server @fbeaufume
@fbeaufume
http://localhost:8888/order/default @fbeaufume
Service registry pom.xml main @fbeaufume
http://localhost:8761/
http://localhost:8761/eureka/apps/order @fbeaufume
Microservice métier pom.xml boostrap.xml @fbeaufume
Load balancer et circuit breaker @Configuration RestConfiguration @Service OrderService 2
3 4 1
Gateway pom.xml main application.yml @fbeaufume
Routage • Par cookie • Par header • Par host
• Par date • Etc. @fbeaufume
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 @fbeaufume
http://localhost:9411/zipkin/ Zipkin application.yml @fbeaufume
@fbeaufume
@Component @Aspect ZipkinTracingAspect Interception des méthodes 1 2 3 5
4
Spring Boot Admin http://localhost:8090/
None
Merci @fbeaufume