DISQUS
Building Scalable Web Apps
David Cramer
***@zeeg
Tuesday, June 21, 2011
Agenda
• Terminology
• Common bottlenecks
• Building a scalable app
• Architecting your database
• Utilizing a Queue
• The importance of an API
Tuesday, June 21, 2011
Performance vs. Scalability
“Performance measures the speed with
which a single request can be executed,
while scalability measures the ability of a
request to maintain its performance under
increasing load.”
(but we’re not just going to scale your code)
Tuesday, June 21, 2011
Sharding
“Database sharding is a method of
horizontally partitioning data mon
properties”
Tuesday, June 21, 2011
Denormalization
“Denormalization is the process of
attempting to optimize the performance of
a database by adding redundant data or by
grouping data.”
Tuesday, June 21, 2011
Common Bottlenecks
• Database (almost always)
• Caching, Invalidation
• Lack of metrics, lack of tests
Tuesday, June 21, 2011
Building Tweeter
Tuesday, June 21, 2011
Getting Started
• Pick a framework: Django, Flask, Pyramid
• Package your app; Repeatability
• Solve problems
• Invest in architecture
Tuesday, June 21, 2011
Let’s use Django
Tuesday, June 21, 2011
Tuesday, June 21, 2011
Building Scalable Web Apps 来自淘豆网www.taodocs.com转载请标明出处.