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
Learning to Build Distributed Systems the Hard Way
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Theo Hultberg
March 05, 2013
Programming
1
150
Learning to Build Distributed Systems the Hard Way
Scandinavian Developer Conference 2013
Theo Hultberg
March 05, 2013
Tweet
Share
More Decks by Theo Hultberg
See All by Theo Hultberg
Datalakes at AWS Summit Stockholm 2018
iconara
0
99
Building a CQL driver
iconara
0
73
Chasing the Elephant
iconara
0
100
Learning to Build Distributed Systems the Hard Way
iconara
2
220
Learning to Build Distributed Systems the Hard Way
iconara
3
5.2k
Concurrency and Distributed Systems in JRuby
iconara
3
690
A Guide to the Post Relational Revolution
iconara
4
5.4k
Standing on the Shoulders of Giants with JRuby
iconara
4
170
Shortcuts Around the Mistakes I've Made Scaling MongoDB
iconara
4
170
Other Decks in Programming
See All in Programming
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
370
AI時代の認知負荷との向き合い方
optfit
0
130
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
180
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.5k
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
440
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
220
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
150
AtCoder Conference 2025
shindannin
0
1k
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
670
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
170
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
190
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
590
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
230
GitHub's CSS Performance
jonrohan
1032
470k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
110
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The agentic SEO stack - context over prompts
schlessera
0
620
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
110
How to build a perfect <img>
jonoalderson
1
4.9k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Mind Mapping
helmedeiros
PRO
0
73
Leo the Paperboy
mayatellez
4
1.4k
Transcript
LEARNING TO BUILD DISTRIBUTED SYSTEMS THE HARD WAY @iconara NEW
and improved!
LEARNING TO BUILD DISTRIBUTED SYSTEMS THE HARD WAY @iconara NEW
and improved!
speakerdeck.com/iconara
Theo / @iconara
chief architect at BURT
FAILURE embrace it
SCALE how hard can it be? let’s worry about that
later.
KNOW YOUR LIMITS who’s the largest customer you could sign?
what would happen if you did?
BALANCE “customer” is a really bad shard key, find something
that distributes evenly & uniformly
SCALE OUT, NOT UP bigger boxes aren’t going to save
you <
START WITH TWO OF EVERYTHING going from one to two
is the hardest, force yourself to solve the scaling problem up front
START WITH TWO OF EVERYTHING you’ll solve the scaling problem,
and need less overcapacity THREE
LIMITS we’ll probably never run out of memory
BACK PRESSURE what happens when the system is working at
full capacity? what happens next?
PRODUCTION = QA production is where the weird shit happens,
can you test production traffic without deploying to production? =
MONOLITHS running all the things on the same box is
really fast. what could ever go wrong? 1:4:9
DECOUPLE UNTIL IT BREAKS moving things to separate services means
that you will be able to scale them independently
PROCESSING & STORAGE separate processing from storage, they almost never
scale together.
SCALE exponential scaling is also scaling, but you want it
as cheaply as possible
SCALE your CFO may not agree that O(2n) = O(n)
GÖTEBORG, DISTRIBUTED @gbgdistr meetup.com/gbgdistributed
KTHXBAI @iconara github.com/iconara architecturalatrocities.com burtcorp.com