Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Reliability of Distributed Systems
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Piyush Verma
June 22, 2019
Technology
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Reliability of Distributed Systems
Piyush Verma
June 22, 2019
More Decks by Piyush Verma
See All by Piyush Verma
SLOs that Lie
meson10
0
150
Doing SRE the right way - 2
meson10
0
190
Doing SRE the right way
meson10
0
1k
Observability and Control Theory
meson10
1
1.2k
Reliability
meson10
0
210
My TLS was broken
meson10
0
190
Technology that builds Organizations
meson10
0
170
Namespace.go
meson10
0
220
Cgroups and Namespaces in Linux
meson10
0
450
Other Decks in Technology
See All in Technology
継続的なAIコスト最適化
bgpat
1
340
Browser Spec: Testing Hotwire with Ruby
takahashim
1
120
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
170
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
1
150
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
860
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
160
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
130
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.3k
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
760
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Bash Introduction
62gerente
615
220k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
750
Unsuck your backbone
ammeep
672
58k
Abbi's Birthday
coloredviolet
4
10k
How to Talk to Developers About Accessibility
jct
2
580
Become a Pro
speakerdeck
PRO
31
6.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
570
Transcript
Reliability of Distributed Systems - Piyush Verma
Every product either dies a hero or lives long enough
to hit Reliability issues. 2
Customer Empathy No Chooran. Cost to Everything Architectures adapt to
$ Priority 01 02 03 04 3 Take it and Go
Service receives SMS User sends SMS Remind me to buy
milk at 6:30 PM to 53308 Cron gets Activated when time is right. Call the User 4 Sample Product
Service receives SMS User sends SMS Remind me to buy
milk at 6:30 PM to 53308 Cron gets Activated when time is right. Call the User 5 Sample Product: Inbound
Cron gets Activated when time is right. Call the User
6 Sample Product: Outbound Service receives SMS User sends SMS Remind me to buy milk at 6:30 PM to 53308
7 Inbound Connection
— Leslie Lamport https://www.microsoft.com/en-us/research/uploads/prod/2016 /12/Distribution.pdf “A distributed system is one
in which the failure of a computer you didn’t even know existed can render your own computer unusable” 8
Four Flavors of Failure 9 Disk Network CPU Memory
Network is Reliable Intra-LAN latency is ~ Zero Network is
Homogeneous Network cost is Zero 01 02 03 04 10
11 Scope of Failures: Again
At-least one server is online All servers are below 100%
All servers are responding within x ms. All of the above. 01 02 03 04 12
13 #1 Server is Unavailable
14 Replication Available
15 Replication Available
16 Available != Load Balanced
17 Load Balanced
18 Architecture of a Balancer
GCP AWS On-Prem Azure Who uses What? 19
Trilemma 20
Trilemma 21 Available Economical Endurable
22 Available + Load Balanced
Load Balancing 23
24 Monty Hall Problem: Was Marilyn vos Savant, right?
25 Server-side Load Balancing Example: Fabio
26 Look-aside Load Balancing Example: Consul/ DNS
27 Client-side Load Balancing Example: Ribbon
28 Client-side Load Balancing Example: Ribbon + Curator
29 Problems
30 Load Shedding
— Tyler McMullen https://www.infoq.com/presentations/load-balancing/ “Load Balancing is almost Impossible” 31
Alternate Reliability 32
33 Asynchronous Architectures
34 Asynchronous Architectures Example: RabbitMQ Kafka Kinesis SQS
Cron gets Activated when time is right. Call the User
35 Sample Product: Outbound Service receives SMS User sends SMS Remind me to buy milk at 6:30 PM to 53308 Part 1
36 Outbound
37 Scope of Failure: Outbound
38 Retries
39 Retries: Transient Failures
40 Exponential Backoff: Short term Transient Failures ✋ ✋ ✋
✋ ✋
41 Circuit Breaking: Long Term Transient Failures
42 Revisited
Dilemma 43 At-least Once Exactly-Once At-most Once
44 At-most once delivery
45 At-least once delivery
46 Exactly once delivery
47 Exactly once delivery = At-least-once Delivery + Exactly-once Processing
Keys to Only-Once delivery 48 Atomic Window Idempotent
Out-of-Order delivery 49
Revisit 50
Service receives SMS User sends SMS Remind me to buy
milk at 6:30 PM to 53308 Cron gets Activated when time is right. Call the User 51 Sample Product
52 Problems of State
53 Problems of State
54 Locked /Serialization
55 Master/ Master/ Slave
56 Clustering
Scalability 57 Data Replication Reduced Communication Logic/Data Decentralization
CAP Theorem [Sab topi pehna rahe] 58
59 Trilemma Available Partition Consistent
PACeLC Theorem 60
Dilemma 61 Consistency Latency
62 Revised Flow
63 What about Spanner? What about Calvin?
Reliable System 64 Scalable Correct Transparent
Access Transparency Location Transparency Concurrency Transparency Failure Transparency 01 02
03 04 65
Size Scalability Geographical Scalability 01 02 66
Summary 67 Consistent Available Economical Low Latency
68 All Put Together
Embrace your Bugs No Silver Bullet Cost to Everything Product
First 01 02 03 04 69
Does anyone have any questions?
[email protected]
Thanks 70