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
38
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
57
Programmation concurrente en Java
fbeaufume
0
36
Nouveautés de Java 8
fbeaufume
0
41
WebSocket avec Java EE 7
fbeaufume
0
31
Other Decks in Programming
See All in Programming
AIコーディングの理想と現実
tomohisa
38
40k
“技術カンファレンスで何か変わる?” ──RubyKaigi後の自分とチームを振り返る
ssagara00
0
150
プロフェッショナルとしての成長「問題の深掘り」が導く真のスキルアップ / issue-analysis-and-skill-up
minodriven
8
2k
GitHub Copilot for Azureを使い倒したい
ymd65536
1
340
Serving TUIs over SSH with Go
caarlos0
0
770
クラス設計の手順
akikogoto
0
120
カオスに立ち向かう小規模チームの装備の選択〜フルスタックTSという装備の強み _ 弱み〜/Choosing equipment for a small team facing chaos ~ Strengths and weaknesses of full-stack TS~
bitkey
1
150
医療系ソフトウェアのAI駆動開発
koukimiura
1
140
VitestのIn-Source Testingが便利
taro28
9
2.5k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1k
note の Elasticsearch 更新系を支える技術
tchov
9
3.6k
最速Green Tea 🍵 Garbage Collector
kuro_kurorrr
1
150
Featured
See All Featured
A Tale of Four Properties
chriscoyier
159
23k
Making the Leap to Tech Lead
cromwellryan
133
9.3k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
How to Ace a Technical Interview
jacobian
276
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.3k
RailsConf 2023
tenderlove
30
1.1k
Fireside Chat
paigeccino
37
3.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Code Reviewing Like a Champion
maltzj
523
40k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
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