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
Circuit Breakers & Microservices
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Bastian Hofmann
December 01, 2016
Programming
160
2
Share
Circuit Breakers & Microservices
Bastian Hofmann
December 01, 2016
More Decks by Bastian Hofmann
See All by Bastian Hofmann
Monitoring in Kubernetes with Prometheus and Grafana
bastianhofmann
0
350
Creating a fast Kubernetes Development Workflow
bastianhofmann
0
140
Highly available cross-region deployments with Kubernetes
bastianhofmann
1
160
From source to Kubernetes in 30 minutes
bastianhofmann
0
190
Introduction to Kubernetes
bastianhofmann
1
140
CI/CD with Kubernetes
bastianhofmann
0
230
Creating a fast Kubernetes Development Workflow
bastianhofmann
1
280
Deploying your first Micro-Service application to Kubernetes
bastianhofmann
2
200
Creating a fast Kubernetes Development Workflow
bastianhofmann
0
260
Other Decks in Programming
See All in Programming
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
120
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
2
200
Agent Skills を社内で育てる仕組み作り
jackchuka
1
2.1k
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
1
490
【ディップ|26年新卒研修資料】TDD実装演習
dip_tech
PRO
0
220
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
230
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
430
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
h0r15h0
1
110
AI Agent と正しく分析するための環境作り
yoshyum
2
550
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
370
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
150
iOS26時代の新規アプリ開発
yuukiw00w
0
160
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Music & Morning Musume
bryan
47
7.2k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
330
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
540
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
700
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
140
Abbi's Birthday
coloredviolet
2
7.6k
Transcript
Circuit Breakers & Microservices @BastianHofmann
None
None
11 million users
193 countries
~1800 request/s
lots of data
>100 million publications
~ 140 components
~ 400 repositories
haproxy node memcache postgresql mongodb solr infinispan hbase mongodb solr
community services
+ async events, stream and batch processing
Latency
Stability
Handling failures
What do I do when something breaks?
Errors happen
Bugs
Performance regressions
Server outages
Database overloads
Service A Service B 200 OK
Service A Service B 5xx
Service A Service B Timeout
Circuit Breakers
Service A Service B 200 OK Circuit Breaker Status: closed
Error rate: 0
Service A Service B Error Circuit Breaker Status: -> open
Error rate: > threshold
Service A Service B Circuit Breaker Status: -> open Error
rate: > threshold
Service A Service B Error Circuit Breaker Status: -> open
Error rate: > threshold Test if still failing
Service A Service B 200 OK Circuit Breaker Status: ->
close Error rate: 0 Test if still failing
Gracefully handling exceptions
Component based fronted
None
None
None
None
None
None
None
Degrading Functionality
Profile Publications Publication Publication Publication AboutMe LeftColumn Image Menu Institution
Profile Publications Publication Publication Publication AboutMe LeftColumn Image Menu EXCEPTION
Institution
Profile Publications Publication Publication Publication LeftColumn Image Menu Institution
How do I handle traffic spikes?
Service A Service B 200 OK Circuit Breaker
Service A Service B Circuit Breaker Service C Circuit Breaker
Timeouts
Service A Service B Circuit Breaker Service C Circuit Breaker
Timeouts
Throttling
Service A Service B Circuit Breaker Service C Circuit Breaker
Only allow xx% of calls
None
Priority
Service A Service B Circuit Breaker Service C Circuit Breaker
100% of calls 10% of calls
https://github.com/Netflix/Hystrix
https://github.com/odesk/phystrix
None
http://twitter.com/BastianHofmann http://lanyrd.com/people/BastianHofmann http://speakerdeck.com/u/bastianhofmann
[email protected]