Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
LEARNING TO BUILD DISTRIBUTED SYSTEMS THE HARD WAY @iconara NEW and improved!
Slide 2
Slide 2 text
LEARNING TO BUILD DISTRIBUTED SYSTEMS THE HARD WAY @iconara NEW and improved!
Slide 3
Slide 3 text
speakerdeck.com/iconara
Slide 4
Slide 4 text
Theo / @iconara
Slide 5
Slide 5 text
chief architect at BURT
Slide 6
Slide 6 text
FAILURE embrace it
Slide 7
Slide 7 text
SCALE how hard can it be? let’s worry about that later.
Slide 8
Slide 8 text
KNOW YOUR LIMITS who’s the largest customer you could sign? what would happen if you did?
Slide 9
Slide 9 text
BALANCE “customer” is a really bad shard key, find something that distributes evenly & uniformly
Slide 10
Slide 10 text
SCALE OUT, NOT UP bigger boxes aren’t going to save you <
Slide 11
Slide 11 text
START WITH TWO OF EVERYTHING going from one to two is the hardest, force yourself to solve the scaling problem up front
Slide 12
Slide 12 text
START WITH TWO OF EVERYTHING you’ll solve the scaling problem, and need less overcapacity THREE
Slide 13
Slide 13 text
LIMITS we’ll probably never run out of memory
Slide 14
Slide 14 text
BACK PRESSURE what happens when the system is working at full capacity? what happens next?
Slide 15
Slide 15 text
PRODUCTION = QA production is where the weird shit happens, can you test production traffic without deploying to production? =
Slide 16
Slide 16 text
MONOLITHS running all the things on the same box is really fast. what could ever go wrong? 1:4:9
Slide 17
Slide 17 text
DECOUPLE UNTIL IT BREAKS moving things to separate services means that you will be able to scale them independently
Slide 18
Slide 18 text
PROCESSING & STORAGE separate processing from storage, they almost never scale together.
Slide 19
Slide 19 text
SCALE exponential scaling is also scaling, but you want it as cheaply as possible
Slide 20
Slide 20 text
SCALE your CFO may not agree that O(2n) = O(n)
Slide 21
Slide 21 text
GÖTEBORG, DISTRIBUTED @gbgdistr meetup.com/gbgdistributed
Slide 22
Slide 22 text
KTHXBAI @iconara github.com/iconara architecturalatrocities.com burtcorp.com