Scaling Quizlet
-
Upload
quizlet -
Category
Technology
-
view
782 -
download
2
description
Transcript of Scaling Quizlet
Scaling Quizlet
Andrew SutherlandFounder
Friday, April 20, 12
Quizlet.com
We provide educational tools for millions of kids.
Friday, April 20, 12
• 70M pageviews/mo
• 7.5M uniques/mo
• Quantcast US Rank: #385
• 99.97% uptime this year
Traffic
Friday, April 20, 12
Traffic Pattern
6x growth in 4 weeks, every yearFriday, April 20, 12
• 160 GB in MySQL
• 1.1B rows in `answers` table
• One big 48GB master does it all (are we crazy?)
Data
Friday, April 20, 12
• 2 Load Balancers
• 3 Web Servers
• 2 Database machines
• ~15 machines doing services
Architecture
Friday, April 20, 12
Page requests: - 750 rps peak - 300 rps avg
Memcached: - 2,500 qps peak - 1,000 qps avg
MySQL:- 1,100 qps peak- 465 qps avg
Throughput
Friday, April 20, 12
Removing joins.
Putting all ID-based lookups in memcached.
3x’d our performance overnight,prevented complicated architecture
Biggest single win(2010)
Friday, April 20, 12
Watching syscalls with DTrace
dtrace -n 'syscall::open:entry { printf("%s %s",execname,copyinstr(arg0)); }'
Found PHP opening files because of require_once(). Switched to require().
Friday, April 20, 12
Need better visibility into apps
Site got 2x faster here
Friday, April 20, 12
AVERAGESSUCK
Friday, April 20, 12
Enter New Relic(live demo)
Friday, April 20, 12
New Relic isn’t enough.
Friday, April 20, 12
Check out our super-crappy,super-awesome Inline I/O viewer
Friday, April 20, 12
And our super-crappy,super-awesome App log viewer
Friday, April 20, 12
Check out our super-crappy,super-awesome Log Viewer
Our log viewer
Friday, April 20, 12
YOUR LOGSARE
RELATIONALFriday, April 20, 12
• User ID• IP address• Type• Frequency• Type+Frequency• Response times
Log lookups by
Friday, April 20, 12
Scalable diagnosis of user issues with
feedback(demo)
Friday, April 20, 12
We built a game in Node.
It rocks.
The Future
Friday, April 20, 12
We built a game in Node.
It rocks.
Future
Friday, April 20, 12
We built a game in Node.
It rocks.
Future
Friday, April 20, 12
Single user might have 5 messageswith the server in 1 second.
Connection lasts 30 minutes,not 100ms.
New Scaling Story
Friday, April 20, 12
We’re exploring this now.And need help.
Scaling node
Friday, April 20, 12
Random Tips
Friday, April 20, 12
http://showmewhatswrong.com/
Show Me What’s Wrong
Second coolest website ever.
Friday, April 20, 12
Setup GMail filter for SMS
1. Add filter for [email protected]
2. Forward to [email protected] (VZW)
3. Your app can now text you anytime, for free.
Poor man’s SMS alerts
Friday, April 20, 12
Get the New Relic Menu BarAlways know about how much traffic you have.
Ambient Traffic Awareness
(Available in Mac App Store)
Friday, April 20, 12
Use Vogue!
Never refresh for CSS again!
Voguegithub.com/quizlet/vogue
Friday, April 20, 12
Thanks!
Follow:@asuth
@quizlet
Friday, April 20, 12