SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Scalability: Concepts and
         Practices
        Danny DiPaolo
         June 16, 2009
  Pariveda Lightning Lunch #8
Why scale?
• Speed
• Reliability
• Ease of growth
How do you scale?
• Hardware
  – Throwing more CPU, hard drive, network speed,
    etc. at the problem
• Software
  – Implementing caching solutions, reducing
    overhead, tweaking algorithms, partitioning
• Infrastructure
  – Vertical/horizontal scaling
Example: livejournal
1.  1 server: web + database
2.  2 servers: web, database
3.  4 servers: 3 web, database
4.  5 servers: 3 web, 2 database
5.  <skip a few>
6.  24 servers: 2 lb’s, 3 gateways, 12 web, 1 master db, 6
    slave db
7. 45 servers: 2 lb’s, 5 gateways, 25 web, 1 global db
    master, 2 db cluster masters, 10 db slaves (6, 2, 2)
http://danga.com/words/2005_oscon/oscon-2005.pdf
Example: livejournal (cont’d)
• Didn’t even get into:
  – Caching (memcached)
  – Custom FS (MogileFS)
  – Custom load-balancing (Perlbal)
Lessons learned
• Using any of the one scaling solutions will
  help, but using them all intelligently will help
  more
• If you need to scale, chances are you will have
  to throw new hardware at the problem
• Need good system knowledge to understand
  bottlenecks and points of failure
• The goal:
The goal
References
• Livejournal scalability:
  http://danga.com/words/2005_oscon/oscon-2005.pdf
• Flickr + MySQL: http://www.scribd.com/doc/21793/Scaling-
  PHPMySQL-Presentation-from-Flickr
• Youtube + MySQL:
  http://itc.conversationsnetwork.org/shows/detail3299.html
• Flickr architecture:
  http://www.bytebot.net/blog/archives/2007/04/25/federati
  on-at-flickr-a-tour-of-the-flickr-architecture
• Facebook engineering notes:
  http://www.facebook.com/notes.php?id=9445547199
Questions?
•   Danny DiPaolo
•   Email: danny.dipaolo@parivedasolutions.com
•   Gtalk: ddipaolo@gmail.com
•   Twitter: @ddipaolo
•   LinkedIn:
    http://www.linkedin.com/in/ddipaolo

Weitere ähnliche Inhalte

Was ist angesagt?

Optimizing Your Frontend Performance
Optimizing Your Frontend PerformanceOptimizing Your Frontend Performance
Optimizing Your Frontend Performance
Thomas Weinert
 
ASP.NET Scalability - NxtGen Oxford
ASP.NET Scalability - NxtGen OxfordASP.NET Scalability - NxtGen Oxford
ASP.NET Scalability - NxtGen Oxford
Phil Pursglove
 
Drupal Performance and Scaling
Drupal Performance and ScalingDrupal Performance and Scaling
Drupal Performance and Scaling
Gerald Villorente
 
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
Ontico
 
微博cache设计谈
微博cache设计谈微博cache设计谈
微博cache设计谈
Tim Y
 

Was ist angesagt? (20)

WiredTiger Overview
WiredTiger OverviewWiredTiger Overview
WiredTiger Overview
 
High Performance Drupal Sites
High Performance Drupal SitesHigh Performance Drupal Sites
High Performance Drupal Sites
 
2008 MySQL Conference Recap
2008 MySQL Conference Recap2008 MySQL Conference Recap
2008 MySQL Conference Recap
 
A faster web
A faster webA faster web
A faster web
 
Optimize drupal
Optimize drupalOptimize drupal
Optimize drupal
 
Optimizing Your Frontend Performance
Optimizing Your Frontend PerformanceOptimizing Your Frontend Performance
Optimizing Your Frontend Performance
 
Shared Hosting Hepsia.Co plan and feature
Shared Hosting Hepsia.Co plan and featureShared Hosting Hepsia.Co plan and feature
Shared Hosting Hepsia.Co plan and feature
 
Is It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceIs It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB Performance
 
Building Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KLBuilding Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KL
 
High Performance Wordpress
High Performance WordpressHigh Performance Wordpress
High Performance Wordpress
 
ASP.NET Scalability - NxtGen Oxford
ASP.NET Scalability - NxtGen OxfordASP.NET Scalability - NxtGen Oxford
ASP.NET Scalability - NxtGen Oxford
 
Ovh webmail | Ovh Server
Ovh webmail | Ovh ServerOvh webmail | Ovh Server
Ovh webmail | Ovh Server
 
Gluster 3.3 deep dive
Gluster 3.3 deep diveGluster 3.3 deep dive
Gluster 3.3 deep dive
 
Drupal Performance and Scaling
Drupal Performance and ScalingDrupal Performance and Scaling
Drupal Performance and Scaling
 
Ansible for large scale deployment
Ansible for large scale deploymentAnsible for large scale deployment
Ansible for large scale deployment
 
High Performance Weibo QCon Beijing 2011
High Performance Weibo QCon Beijing 2011High Performance Weibo QCon Beijing 2011
High Performance Weibo QCon Beijing 2011
 
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
Ужимай и властвуй алгоритмы компрессии в базах данных / Петр Зайцев (Percona)
 
Serve like a boss (part one)
Serve like a boss (part one)Serve like a boss (part one)
Serve like a boss (part one)
 
Day 2 General Session Presentations RedisConf
Day 2 General Session Presentations RedisConfDay 2 General Session Presentations RedisConf
Day 2 General Session Presentations RedisConf
 
微博cache设计谈
微博cache设计谈微博cache设计谈
微博cache设计谈
 

Andere mochten auch

Non Relational Databases
Non Relational DatabasesNon Relational Databases
Non Relational Databases
Daniel DiPaolo
 
NuVitae Presentation
NuVitae PresentationNuVitae Presentation
NuVitae Presentation
nuvitae
 
Speechasdelivered Arabic 090612151017 Phpapp01
Speechasdelivered Arabic 090612151017 Phpapp01Speechasdelivered Arabic 090612151017 Phpapp01
Speechasdelivered Arabic 090612151017 Phpapp01
guest97a8f7
 
Konflik kekerasan antar kelompok perguruan pencak silat
Konflik kekerasan antar kelompok perguruan pencak silatKonflik kekerasan antar kelompok perguruan pencak silat
Konflik kekerasan antar kelompok perguruan pencak silat
Andik Setiawan
 

Andere mochten auch (9)

Non Relational Databases
Non Relational DatabasesNon Relational Databases
Non Relational Databases
 
NuVitae Presentation
NuVitae PresentationNuVitae Presentation
NuVitae Presentation
 
This Little Girl Got Me Thinking
This Little Girl Got Me ThinkingThis Little Girl Got Me Thinking
This Little Girl Got Me Thinking
 
Speechasdelivered Arabic 090612151017 Phpapp01
Speechasdelivered Arabic 090612151017 Phpapp01Speechasdelivered Arabic 090612151017 Phpapp01
Speechasdelivered Arabic 090612151017 Phpapp01
 
Konflik kekerasan antar kelompok perguruan pencak silat
Konflik kekerasan antar kelompok perguruan pencak silatKonflik kekerasan antar kelompok perguruan pencak silat
Konflik kekerasan antar kelompok perguruan pencak silat
 
Web2.0 Arch V2.1
Web2.0 Arch V2.1Web2.0 Arch V2.1
Web2.0 Arch V2.1
 
10 Rulz To Live
10 Rulz To Live10 Rulz To Live
10 Rulz To Live
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 

Ähnlich wie Scalability

001 hbase introduction
001 hbase introduction001 hbase introduction
001 hbase introduction
Scott Miao
 
Storage Systems For Scalable systems
Storage Systems For Scalable systemsStorage Systems For Scalable systems
Storage Systems For Scalable systems
elliando dias
 
SQL Server Clustering for Dummies
SQL Server Clustering for DummiesSQL Server Clustering for Dummies
SQL Server Clustering for Dummies
Mark Broadbent
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive Writes
Liran Zelkha
 
Optimizing MySQL for Cascade Server
Optimizing MySQL for Cascade ServerOptimizing MySQL for Cascade Server
Optimizing MySQL for Cascade Server
hannonhill
 

Ähnlich wie Scalability (20)

Database as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance PlatformDatabase as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance Platform
 
001 hbase introduction
001 hbase introduction001 hbase introduction
001 hbase introduction
 
Storage Systems For Scalable systems
Storage Systems For Scalable systemsStorage Systems For Scalable systems
Storage Systems For Scalable systems
 
Cost Effectively Run Multiple Oracle Database Copies at Scale
Cost Effectively Run Multiple Oracle Database Copies at Scale Cost Effectively Run Multiple Oracle Database Copies at Scale
Cost Effectively Run Multiple Oracle Database Copies at Scale
 
VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right VMworld 2013: Virtualizing Databases: Doing IT Right
VMworld 2013: Virtualizing Databases: Doing IT Right
 
SQL Server Clustering for Dummies
SQL Server Clustering for DummiesSQL Server Clustering for Dummies
SQL Server Clustering for Dummies
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive Writes
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen
 
Optimizing MySQL for Cascade Server
Optimizing MySQL for Cascade ServerOptimizing MySQL for Cascade Server
Optimizing MySQL for Cascade Server
 
OSDC 2016 - Tuning Linux for your Database by Colin Charles
OSDC 2016 - Tuning Linux for your Database by Colin CharlesOSDC 2016 - Tuning Linux for your Database by Colin Charles
OSDC 2016 - Tuning Linux for your Database by Colin Charles
 
OSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin CharlesOSDC 2017 | Lessons from database failures by Colin Charles
OSDC 2017 | Lessons from database failures by Colin Charles
 
Transitioning From SQL Server to MySQL - Presentation from Percona Live 2016
Transitioning From SQL Server to MySQL - Presentation from Percona Live 2016Transitioning From SQL Server to MySQL - Presentation from Percona Live 2016
Transitioning From SQL Server to MySQL - Presentation from Percona Live 2016
 
Pure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talkPure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talk
 
Gluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & TricksGluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & Tricks
 
Optimizing Latency-sensitive queries for Presto at Facebook: A Collaboration ...
Optimizing Latency-sensitive queries for Presto at Facebook: A Collaboration ...Optimizing Latency-sensitive queries for Presto at Facebook: A Collaboration ...
Optimizing Latency-sensitive queries for Presto at Facebook: A Collaboration ...
 
DrupalSouth 2015 - Performance: Not an Afterthought
DrupalSouth 2015 - Performance: Not an AfterthoughtDrupalSouth 2015 - Performance: Not an Afterthought
DrupalSouth 2015 - Performance: Not an Afterthought
 
DrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilityDrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalability
 
Drupal performance
Drupal performanceDrupal performance
Drupal performance
 
Running MySQL on Linux
Running MySQL on LinuxRunning MySQL on Linux
Running MySQL on Linux
 
MySQL in the Cloud
MySQL in the CloudMySQL in the Cloud
MySQL in the Cloud
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Scalability

  • 1. Scalability: Concepts and Practices Danny DiPaolo June 16, 2009 Pariveda Lightning Lunch #8
  • 2. Why scale? • Speed • Reliability • Ease of growth
  • 3. How do you scale? • Hardware – Throwing more CPU, hard drive, network speed, etc. at the problem • Software – Implementing caching solutions, reducing overhead, tweaking algorithms, partitioning • Infrastructure – Vertical/horizontal scaling
  • 4. Example: livejournal 1. 1 server: web + database 2. 2 servers: web, database 3. 4 servers: 3 web, database 4. 5 servers: 3 web, 2 database 5. <skip a few> 6. 24 servers: 2 lb’s, 3 gateways, 12 web, 1 master db, 6 slave db 7. 45 servers: 2 lb’s, 5 gateways, 25 web, 1 global db master, 2 db cluster masters, 10 db slaves (6, 2, 2) http://danga.com/words/2005_oscon/oscon-2005.pdf
  • 5. Example: livejournal (cont’d) • Didn’t even get into: – Caching (memcached) – Custom FS (MogileFS) – Custom load-balancing (Perlbal)
  • 6. Lessons learned • Using any of the one scaling solutions will help, but using them all intelligently will help more • If you need to scale, chances are you will have to throw new hardware at the problem • Need good system knowledge to understand bottlenecks and points of failure • The goal:
  • 8. References • Livejournal scalability: http://danga.com/words/2005_oscon/oscon-2005.pdf • Flickr + MySQL: http://www.scribd.com/doc/21793/Scaling- PHPMySQL-Presentation-from-Flickr • Youtube + MySQL: http://itc.conversationsnetwork.org/shows/detail3299.html • Flickr architecture: http://www.bytebot.net/blog/archives/2007/04/25/federati on-at-flickr-a-tour-of-the-flickr-architecture • Facebook engineering notes: http://www.facebook.com/notes.php?id=9445547199
  • 9. Questions? • Danny DiPaolo • Email: danny.dipaolo@parivedasolutions.com • Gtalk: ddipaolo@gmail.com • Twitter: @ddipaolo • LinkedIn: http://www.linkedin.com/in/ddipaolo