SlideShare a Scribd company logo
PAINFUL SUCCESS
Jesper Richter-Reichhelm (@jrirei) / session 4853
Monday, 18 March 13
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/scalability-case-study
Presented at QCon London
www.qconlondon.com
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Pain
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Flash client Backend
Monday, 18 March 13
7M players / month
Monday, 18 March 13
7M players / month
10K API calls / second
Monday, 18 March 13
7M players / month
10K API calls / second
200K DB operations / second
Monday, 18 March 13
7M players / month
10K API calls / second
200K DB operations / second
100K DB writes / second
Monday, 18 March 13
7M players / month
10K API calls / second
200K DB operations / second
100K DB writes / second
2 devops since 2009
Monday, 18 March 13
Success
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Painful Success
Monday, 18 March 13
Painful Success
Monday, 18 March 13
2009
Decisions
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
What is the right
software stack?
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
SQL
ap
lb
SQL
Browser
sql sql
apap
Monday, 18 March 13
2010
Scaling Up
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
0%#
20%#
40%#
60%#
80%#
100%#
0# 5# 10# 15# 20# 25# 30# 35# 40#
Monday, 18 March 13
0%#
20%#
40%#
60%#
80%#
100%#
0# 5# 10# 15# 20# 25# 30# 35# 40#
Monday, 18 March 13
0%#
20%#
40%#
60%#
80%#
100%#
0# 5# 10# 15# 20# 25# 30# 35# 40#
Monday, 18 March 13
Small things...
Monday, 18 March 13
AMF responses
Monday, 18 March 13
Checking connection
‘status’
Monday, 18 March 13
ActiveRecord caching
Monday, 18 March 13
Always check back
on reality!
Lesson 1:
Monday, 18 March 13
Big Things...
Monday, 18 March 13
Lot’s of tuning
Monday, 18 March 13
Lot’s of tuning
and more memory
Monday, 18 March 13
app
slave
master
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
Monday, 18 March 13
app
master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. remove old DBs
Monday, 18 March 13
app
master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. remove old DBs
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
app
1. create new DBs
2. setup replication
3. start using
masters
4. drop database;
Monday, 18 March 13
You will make
mistakes!
Lesson 2:
Monday, 18 March 13
More things...
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
AB
AB
AB
AB
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
BA
AB
AB
AB
AB
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
BA
AB
AB
AB
AB
Monday, 18 March 13
app
slave
master master
slave
1. create new DBs
2. setup replication
3. start using
masters
4. cut replication
BA
AB
AB
AB
AB
Monday, 18 March 13
app
slave
master master
slave slave
master master
slave
AC
AC
BD
BD
Monday, 18 March 13
app
slave
master master
slave slave
master master
slave
AC
AC
BD
BD
AC
AC
BD
BD
Monday, 18 March 13
app
slave
master master
slave slave
master master
slave
AC
AC
BD
BD
AC
AC
BD
BD
Monday, 18 March 13
app
slave
master master
slave slave
master master
slave
AC
AC
BD
BD
AC
AC
BD
BD
Monday, 18 March 13
The right thing...
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Software is easy,
data is hard!
Lesson 3:
Monday, 18 March 13
24 GB
44 GB
in 8 days
Monday, 18 March 13
Not enough memory
Monday, 18 March 13
Not enough memory
=> no backups
Monday, 18 March 13
Not enough memory
=> no backups
=> no new slaves
Monday, 18 March 13
Not enough memory
=> no backups
=> no new slaves
=> big problem
Monday, 18 March 13
24 GB
38 GB
in 3 days
Monday, 18 March 13
24 GB
38 GB
in 3 days
Fixed in v2.2
Monday, 18 March 13
2011
Operation Hell
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
SQL
EBS EBS EBS EBS
lb lblblb
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
EBSSQLBrowser
lb
lb
lb
lb
ap
ap
ap
ap
ap
ap
ap ap
Monday, 18 March 13
0"
500,000"
1,000,000"
1,500,000"
2,000,000"
Apr*10" Jul*10" Oct*10" Jan*11" Apr*11" Jul*11" Oct*11"
Monday, 18 March 13
0"
500,000"
1,000,000"
1,500,000"
2,000,000"
Apr*10" Jul*10" Oct*10" Jan*11" Apr*11" Jul*11" Oct*11"
AWS outage
in Ireland
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:St%C3%B6wer_Titanic.jpg
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
Monday, 18 March 13
Installed in 3 years:
Monday, 18 March 13
Installed in 3 years:
98 MySQL machines
Monday, 18 March 13
Installed in 3 years:
98 MySQL machines
195 Redis machines
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
2012/2013
Refactoring
Monday, 18 March 13
Lessons learned
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
Monday, 18 March 13
Server Database
One Game Session
Monday, 18 March 13
Server Database
One Game Session
Monday, 18 March 13
Rd
rd
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd
rd
Rd Rd
rd rd
SQL SQL SQL SQL SQL
ap apap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
Rd
rd
ap apap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
Rd
rd
ap apap
lb lblblb
Monday, 18 March 13
Monday, 18 March 13
1. Separate user and world DBs
Monday, 18 March 13
1. Separate user and world DBs
2. Migrate to JRuby
Monday, 18 March 13
1. Separate user and world DBs
2. Migrate to JRuby
3. Introduce life cycle
Monday, 18 March 13
1. Separate user and world DBs
2. Migrate to JRuby
3. Introduce life cycle
4. Remove (user) DBs
Monday, 18 March 13
1. Separate user and world DBs
2. Migrate to JRuby
3. Introduce life cycle
4. Remove (user) DBs
5. Enjoy!
Monday, 18 March 13
Separate user DBs
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
lb lblblb
Monday, 18 March 13
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL SQL
sql sql
SQL SQL
sql sql
SQL
sql
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
JRuby
Monday, 18 March 13
http://www.flickr.com/photos/biblicone/3425903181/sizes/l/in/photostream/
Monday, 18 March 13
JRuby v2
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Throughput
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Throughput
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Throughput
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
no benchmark
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
no benchmark
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
no benchmark
multi
threaded
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
no benchmark
multi
threaded
tuning
Monday, 18 March 13
0
50
100
150
200
Rails 2.3.11
MRI 1.8.7
Rails 3.2.8
MRI 1.8.7
Rails 3.2.8
MRI 1.9.3
Rails 3.2.8
JRuby 1.7.2
Throughput
no benchmark
multi
threaded
tuning
cpu
saturation
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL SQL
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap ap
ap ap
ap ap
ap ap
ap ap
ap ap
ap ap
ap ap ap ap ap ap ap ap ap apap ap ap
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
SQL SQL SQL SQL SQL
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap apap ap ap
lb lblblb
ap
ap
ap
ap
ap
ap
ap
ap
ap
ap
ap
ap
ap
ap
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
NEW OLD
Monday, 18 March 13
NEW OLD
Monday, 18 March 13
NEW OLD
Monday, 18 March 13
NEW OLD
Monday, 18 March 13
Life cycle
Monday, 18 March 13
app
Monday, 18 March 13
app
Monday, 18 March 13
app
servlet
Monday, 18 March 13
app
servlet archiver
Monday, 18 March 13
User
Registry
app
servlet archiver
Monday, 18 March 13
User
Registry
S3
app
servlet archiver
Monday, 18 March 13
User
Registry
SQL Rd
S3
app
servlet archiver
Monday, 18 March 13
User
Registry
SQL Rd
S3
app
servlet archiver
Monday, 18 March 13
World
Data
User
Registry
SQL Rd
S3
app
servlet archiver
Monday, 18 March 13
World
Data
User
Registry
SQL Rd
S3
Load Balancer
app
servlet archiver
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd
rd
Rd
rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
SQL SQL
sql sql
SQL SQL
sql sql
SQL SQL
sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd Rd
rd rd
Rd
rd
Rd
rd
SQL SQL SQL SQL
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
Removing DBs
Monday, 18 March 13
SQL SQL
sql
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQLSQL SQL
sql sql
SQL SQL
sql sql
Rd Rd
rd rd
Rd Rd
rd rd
Rd
rd
SQL SQL SQL SQL
Rd
rd
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
SQL SQL
sql
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
SQL
sql
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
Enjoy
Monday, 18 March 13
SQL
sql
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
SQL
sql
SQL
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
Rd
rd
Rd
rd
Rd
rd
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
ap apap ap ap ap ap ap ap ap ap apap ap ap
Rd
rd
Rd
rd
Rd
rd
lb lblblb
Monday, 18 March 13
http://www.flickr.com/photos/aigle_dore/
Monday, 18 March 13
http://www.flickr.com/photos/aigle_dore/
Monday, 18 March 13
Looking Back
Monday, 18 March 13
What is the right
software stack?
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
What is the right
software stack?
Monday, 18 March 13
What is the right
software stack?
Monday, 18 March 13
What kind of application
are we building?
Monday, 18 March 13
User
Monday, 18 March 13
User
Avatar
Monday, 18 March 13
User
Avatar
Cus-
tomer
Monday, 18 March 13
User
GardenAvatar
Cus-
tomer
Monday, 18 March 13
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
Monday, 18 March 13
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
Monday, 18 March 13
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
Monday, 18 March 13
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
User
GardenAvatar
Cus-
tomer
Tiles
Deco-
rations
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:Columbus_Breaking_the_Egg%27_(Christopher_Columbus)_by_William_Hogarth.jpg
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:Columbus_Breaking_the_Egg%27_(Christopher_Columbus)_by_William_Hogarth.jpg
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:Columbus_Breaking_the_Egg%27_(Christopher_Columbus)_by_William_Hogarth.jpg
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:Columbus_Breaking_the_Egg%27_(Christopher_Columbus)_by_William_Hogarth.jpg
Monday, 18 March 13
http://en.wikipedia.org/wiki/File:Columbus_Breaking_the_Egg%27_(Christopher_Columbus)_by_William_Hogarth.jpg
Monday, 18 March 13
What kind of application
are we building?
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Monday, 18 March 13
Plain File System
Monday, 18 March 13
Monday, 18 March 13
Handle state
the right way!
Monday, 18 March 13
Software is easy,
data is hard!
Lesson 3:
Monday, 18 March 13
You will make
mistakes!
Lesson 2:
Monday, 18 March 13
Always check back
on reality!
Lesson 1:
Monday, 18 March 13
Always check back
on your assumptions!
Lesson 1:
Monday, 18 March 13
Thank you
Monday, 18 March 13
Jesper Richter-Reichhelm
@jrirei
woo.ga/backend
wooga.com/jobs
Monday, 18 March 13
Jesper Richter-
Reichhelm
@jrirei
wooga.com/jobs
woo.ga/backend
Monday, 18 March 13
Watch the video with slide synchronization on
InfoQ.com!
http://www.infoq.com/presentations/scalability
-case-study

More Related Content

Similar to Painful Success - Lessons Learned while Scaling Up

Arbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
Arbitrage on Amazon: Exploiting the Textbook Trade-ins with PythonArbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
Arbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
Michael Brandon Lorenz
 
Awright openanalytics-mapmeter
Awright openanalytics-mapmeter Awright openanalytics-mapmeter
Awright openanalytics-mapmeter Open Analytics
 
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
Christian Beedgen
 
PostgreSQL Hooks for Fun and Profit
PostgreSQL Hooks for Fun and ProfitPostgreSQL Hooks for Fun and Profit
PostgreSQL Hooks for Fun and Profit
David Fetter
 
PHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHPPHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHP
Jonathan Klein
 
Metasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCUMetasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCU
Kiwamu Okabe
 
Presentationnosqlmah
PresentationnosqlmahPresentationnosqlmah
Presentationnosqlmah
p3rnilla
 
Intridea ajn-rttos OA NYC Summit
Intridea ajn-rttos OA NYC SummitIntridea ajn-rttos OA NYC Summit
Intridea ajn-rttos OA NYC Summit
Open Analytics
 
Why Isn't My Query Using an Index? An Introduction to SQL Performance
Why Isn't My Query Using an Index? An Introduction to SQL PerformanceWhy Isn't My Query Using an Index? An Introduction to SQL Performance
Why Isn't My Query Using an Index? An Introduction to SQL Performance
Chris Saxon
 
Drupal and Cloud Containers
Drupal and Cloud ContainersDrupal and Cloud Containers
Drupal and Cloud Containers
Josh Koenig
 
My mom told me that Git doesn’t scale by Vicent Martí
My mom told me that Git doesn’t scale by Vicent MartíMy mom told me that Git doesn’t scale by Vicent Martí
My mom told me that Git doesn’t scale by Vicent Martí
Codemotion
 
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp RaleighWriting & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
Puppet
 
Architecting for Change: QCONNYC 2012
Architecting for Change: QCONNYC 2012Architecting for Change: QCONNYC 2012
Architecting for Change: QCONNYC 2012
Kellan
 
HTML5 is the future of mobile
 HTML5 is the future of mobile HTML5 is the future of mobile
HTML5 is the future of mobile
Sergi Mansilla
 
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
Jason Rhodes
 
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
Jason Rhodes
 
Scaling postgres
Scaling postgresScaling postgres
Scaling postgres
Denish Patel
 
Avoiding Regressions in 3rd Party JavaScript
Avoiding Regressions in 3rd Party JavaScriptAvoiding Regressions in 3rd Party JavaScript
Avoiding Regressions in 3rd Party JavaScriptCameron Westland
 
Bring the Noise
Bring the NoiseBring the Noise
Bring the Noise
Jon Cowie
 

Similar to Painful Success - Lessons Learned while Scaling Up (20)

Arbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
Arbitrage on Amazon: Exploiting the Textbook Trade-ins with PythonArbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
Arbitrage on Amazon: Exploiting the Textbook Trade-ins with Python
 
Awright openanalytics-mapmeter
Awright openanalytics-mapmeter Awright openanalytics-mapmeter
Awright openanalytics-mapmeter
 
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
How Sumo Logic And Anki Build Highly Resilient Services On AWS To Manage Mass...
 
PostgreSQL Hooks for Fun and Profit
PostgreSQL Hooks for Fun and ProfitPostgreSQL Hooks for Fun and Profit
PostgreSQL Hooks for Fun and Profit
 
PHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHPPHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHP
 
Metasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCUMetasepi team meeting #16: Safety on ATS language + MCU
Metasepi team meeting #16: Safety on ATS language + MCU
 
Presentationnosqlmah
PresentationnosqlmahPresentationnosqlmah
Presentationnosqlmah
 
Intridea ajn-rttos OA NYC Summit
Intridea ajn-rttos OA NYC SummitIntridea ajn-rttos OA NYC Summit
Intridea ajn-rttos OA NYC Summit
 
Why Isn't My Query Using an Index? An Introduction to SQL Performance
Why Isn't My Query Using an Index? An Introduction to SQL PerformanceWhy Isn't My Query Using an Index? An Introduction to SQL Performance
Why Isn't My Query Using an Index? An Introduction to SQL Performance
 
Drupal and Cloud Containers
Drupal and Cloud ContainersDrupal and Cloud Containers
Drupal and Cloud Containers
 
My mom told me that Git doesn’t scale by Vicent Martí
My mom told me that Git doesn’t scale by Vicent MartíMy mom told me that Git doesn’t scale by Vicent Martí
My mom told me that Git doesn’t scale by Vicent Martí
 
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp RaleighWriting & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
Writing & Sharing Great Modules on the Puppet Forge - Puppet Camp Raleigh
 
Architecting for Change: QCONNYC 2012
Architecting for Change: QCONNYC 2012Architecting for Change: QCONNYC 2012
Architecting for Change: QCONNYC 2012
 
HTML5 is the future of mobile
 HTML5 is the future of mobile HTML5 is the future of mobile
HTML5 is the future of mobile
 
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
The WordPress Hacker's Guide to the \Galaxy() [@Baltimore PHP]
 
Wphackergalaxy
WphackergalaxyWphackergalaxy
Wphackergalaxy
 
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
The WordPress Hacker's Guide to the \Galaxy() [@MidwestPHP]
 
Scaling postgres
Scaling postgresScaling postgres
Scaling postgres
 
Avoiding Regressions in 3rd Party JavaScript
Avoiding Regressions in 3rd Party JavaScriptAvoiding Regressions in 3rd Party JavaScript
Avoiding Regressions in 3rd Party JavaScript
 
Bring the Noise
Bring the NoiseBring the Noise
Bring the Noise
 

More from C4Media

Streaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoStreaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live Video
C4Media
 
Next Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileNext Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy Mobile
C4Media
 
Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020
C4Media
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
C4Media
 
Kafka Needs No Keeper
Kafka Needs No KeeperKafka Needs No Keeper
Kafka Needs No Keeper
C4Media
 
High Performing Teams Act Like Owners
High Performing Teams Act Like OwnersHigh Performing Teams Act Like Owners
High Performing Teams Act Like Owners
C4Media
 
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
C4Media
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate Guide
C4Media
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
C4Media
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
C4Media
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
C4Media
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
C4Media
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
C4Media
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
C4Media
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
C4Media
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
C4Media
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
C4Media
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
C4Media
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
C4Media
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
C4Media
 

More from C4Media (20)

Streaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoStreaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live Video
 
Next Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileNext Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy Mobile
 
Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 
Kafka Needs No Keeper
Kafka Needs No KeeperKafka Needs No Keeper
Kafka Needs No Keeper
 
High Performing Teams Act Like Owners
High Performing Teams Act Like OwnersHigh Performing Teams Act Like Owners
High Performing Teams Act Like Owners
 
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate Guide
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 

Recently uploaded

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
ViralQR
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 

Recently uploaded (20)

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 

Painful Success - Lessons Learned while Scaling Up