Upload
rip-empson
View
254
Download
0
Embed Size (px)
Citation preview
8/2/2019 Spotify Guest
1/70
Distributed Systems
Jon slund@jooon
8/2/2019 Spotify Guest
2/70
Who am I?
8/2/2019 Spotify Guest
3/70
Jon slund
8/2/2019 Spotify Guest
4/70
Sweden
8/2/2019 Spotify Guest
5/70
Computer Science
8/2/2019 Spotify Guest
6/70
8/2/2019 Spotify Guest
7/70
Shakespeare
ProgrammingLanguage
8/2/2019 Spotify Guest
8/70
Joined SpotifyAutumn 2006
8/2/2019 Spotify Guest
9/70
April 2006the idea
8/2/2019 Spotify Guest
10/70
8/2/2019 Spotify Guest
11/70
8/2/2019 Spotify Guest
12/70
music itself is going to become
like running water or electricityDavid Bowie, 2002
8/2/2019 Spotify Guest
13/70
8/2/2019 Spotify Guest
14/70
8/2/2019 Spotify Guest
15/70
8/2/2019 Spotify Guest
16/70
Spotify Box
Spotify Box Jordi Parra @zenona
8/2/2019 Spotify Guest
17/70
February 2012
8/2/2019 Spotify Guest
18/70
10+ million users(active within previous 30 days)
8/2/2019 Spotify Guest
19/70
15+ million tracks
8/2/2019 Spotify Guest
20/70
500+ million playlists
8/2/2019 Spotify Guest
21/70
1000+ serversin 3 countries
8/2/2019 Spotify Guest
22/70
Spotify is a distributedsystem
8/2/2019 Spotify Guest
23/70
Fast
8/2/2019 Spotify Guest
24/70
Always working
8/2/2019 Spotify Guest
25/70
How do youaccomplish that?
8/2/2019 Spotify Guest
26/70
Cheatas much as possible
8/2/2019 Spotify Guest
27/70
Fast
vsFeels fast
8/2/2019 Spotify Guest
28/70
Always working
vsPretend there is
nothing wrong
8/2/2019 Spotify Guest
29/70
Build to fail
8/2/2019 Spotify Guest
30/70
Redundancy(talk about waffles)
8/2/2019 Spotify Guest
31/70
Error recovery
8/2/2019 Spotify Guest
32/70
Don't forget to testyour recovery code
8/2/2019 Spotify Guest
33/70
Fire drill: Cut theatlantic cable
8/2/2019 Spotify Guest
34/70
NetflixChaos Monkey
8/2/2019 Spotify Guest
35/70
On January 15, 1990,AT&Ts long-distancetelephone switching systemcrashed.
8/2/2019 Spotify Guest
36/70
Isolation
G tti th i ht t l
8/2/2019 Spotify Guest
37/70
Getting the right tool
for the job
8/2/2019 Spotify Guest
38/70
8/2/2019 Spotify Guest
39/70
8/2/2019 Spotify Guest
40/70
Consistency
AvailabilityPartition tolerance
http://ksat.me/a-plain-english-introduction-to-cap-theorem/
http://ksat.me/a-plain-english-introduction-to-cap-theorem/http://ksat.me/a-plain-english-introduction-to-cap-theorem/8/2/2019 Spotify Guest
41/70
8/2/2019 Spotify Guest
42/70
user
user
8/2/2019 Spotify Guest
43/70
PostgreSQL
user
user
8/2/2019 Spotify Guest
44/70
user
8/2/2019 Spotify Guest
45/70
search
search
8/2/2019 Spotify Guest
46/70
Lucene index inmemory
search
search
8/2/2019 Spotify Guest
47/70
replaced daily
search
search
8/2/2019 Spotify Guest
48/70
read only
search
search
8/2/2019 Spotify Guest
49/70
scales horizontally
search
search
8/2/2019 Spotify Guest
50/70
sort of
search
search
8/2/2019 Spotify Guest
51/70
How do you replace an
index in memory whenyou are using all of it?
search
8/2/2019 Spotify Guest
52/70
storage
storage
8/2/2019 Spotify Guest
53/70
storage
storage
8/2/2019 Spotify Guest
54/70
sto age
lru cache in nginx
storage
8/2/2019 Spotify Guest
55/70
g
better use of memorywith sharding
8/2/2019 Spotify Guest
56/70
storage
8/2/2019 Spotify Guest
57/70
g
consistent hashing
8/2/2019 Spotify Guest
58/70
playlist
playlist
8/2/2019 Spotify Guest
59/70
cassandra
p y
playlist
8/2/2019 Spotify Guest
60/70
structured key-valuestore
p y
playlist
8/2/2019 Spotify Guest
61/70
high throughput
p y
playlist
8/2/2019 Spotify Guest
62/70
choose redundancy andconsistency level
p y
playlist
8/2/2019 Spotify Guest
63/70
datacentre aware
p y
8/2/2019 Spotify Guest
64/70
p2p
8/2/2019 Spotify Guest
65/70
p2p
8/2/2019 Spotify Guest
66/70
thank you
8/2/2019 Spotify Guest
67/70
Master Thesis?
8/2/2019 Spotify Guest
68/70
Yes, please!
8/2/2019 Spotify Guest
69/70
or come and work for us
Oh and
8/2/2019 Spotify Guest
70/70
Oh, and
we havecake as
well! :D
spotify.com/jobs