SlideShare a Scribd company logo
1 of 23
Download to read offline
http://www.egeniq.com
                                                        info@egeniq.com
                                                                @egeniq




       The Art of Scalability

                         Ivo Jansch / @ijansch
Tweakers.net Developer Summit, March 24 2011
What is Scalability?




   “[...] Scalability is the ability of a system,
    network, or process, to handle growing
  amounts of work in a graceful manner or its
  ability to be enlarged to accommodate that
               growth.” - Wikipedia



                                                    2
Different levels of scale

                   Pageviews/
      Site                         # Servers       Views / server
                     month

  Facebook           200B            30K               6.6M

    Netlog            4B             600               6.6M

    Hyves            6.5B            3000              2.1M

   Tweakers          60M              15                4M

    Nu.nl            340M             14               24M

             (See end of slide deck for sources)
                                                                    3
Some of the tools at Netlog



‣ Content Delivery Network
 • http://www.akamai.com/


‣ Search Engine
 • http://sphinxsearch.com/
 • (Also have a look at http://lucene.apache.org/solr/)


‣ Database Replication
                                                          4
Some of the tools at Hyves



‣ Caching
 • http://memcached.org/


‣ Lightweight webserver
 • http://nginx.org/


‣ Automated deployment
 • http://puppetlabs.com/

                             5
Some of the tools at Nu.nl


‣ Content pre-generation

‣ Varnish Edge Side Includes
   • http://www.varnish-software.com/


‣ Distributed Job Queues
   • http://gearman.org/ *
* nu.nl uses a custom job queue but this is one I can recommend

                                                                  6
Some of the tools at Facebook



‣ PHP -> C++ compiler
 • https://github.com/facebook/hiphop-php


‣ Distributed Logging
 • https://github.com/facebook/scribe


‣ NoSQL Storage
 • http://cassandra.apache.org/

                                            7
How can you scale?
      Start with the basics



                              8
Scaling with Hardware



 If you run your app on multiple servers today,
                 would it work?



Typical problem areas:
‣ Sessions
‣ Files

                                                  9
Elasticity




             10
A scalable funnel


                                                              Load balancer

             Web      Web      Web        Web        Web
            Server   Server   Server     Server     Server


                                                   Load balancer

                      App      App        App
                     Server   Server     Server


                                              Load balancer


                        Database   Services




                                                                              11
Logical/Functional partitioning




                                  12
Scalable Architectures




‣ Service Oriented Architecture

‣ Component Based Design

‣ Abstraction

                                  13
Scalability in Software




‣ Caching

‣ Graceful Degradation


                          14
Food for Thought
       Scaling Wisely



                        15
Food for thought




          Remember, this talk is called:

              “The Art of Scalability”




                                           16
This is Art




              “House of Stairs”
                M.C. Escher




                            17
But this is Art, too




                       “Composition
                         with Blue”
                       Piet Mondriaan




                                   18
Moral of this story




    Scalability is about the ability to scale.


              Don’t scale prematurely.

                      Keep it simple.


                                                 19
“You’re doing it wrong!”


“Scalability is the ability of a system, network,
 or process, to handle growing large amounts
of work in a graceful manner or its ability to be
   enlarged to accommodate that growth.”




                                                20
http://www.egeniq.com
                                   info@egeniq.com
                                           @egeniq




Thank you! Questions?

    http://www.egeniq.com
           ivo@egeniq.com
                 @ijansch
Sources
The slide with servers and pageviews was based on:
‣ http://cns.ucsd.edu/lecturearchive09.shtml#Roth (Facebook)
‣ http://technologie.hyves.nl/ (Hyves)
‣ http://www.slideshare.net/folke/netlog-what-we-learned-about-scalability-high-
    availability-430211 (Netlog)
‣ http://www.slideshare.net/peter_ibuildings/surviving-a-plane-crash (Nu.nl)
‣ http://tweakers.net/reviews/331/5/tweakers-punt-net-faq-plans-stats-servers-en-site-
    software.html (Tweakers)
Credits
The following Creative Commons pictures were used in this presentation:
 ‣ ‘Datacenter Work’ by Leonardo Rizzi - http://www.flickr.com/photos/stars6/4381851322/
 ‣ ‘Rubber Band Man’ by Abe Novy - http://flickr.com/photos/thenovys/3791884189/
 ‣ ‘You’re doing it wrong’ by Adam Swank - http://www.flickr.com/photos/adeepbreath/3952587062/

More Related Content

Similar to Ivo jansch - the art of scalability

How NYTimes.com uses Amazon Web Services - AWS Summit 2011
How NYTimes.com uses Amazon Web Services - AWS Summit 2011How NYTimes.com uses Amazon Web Services - AWS Summit 2011
How NYTimes.com uses Amazon Web Services - AWS Summit 2011Vadim Jelezniakov
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Newlink
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Newlink
 
Containers: Give Me The Facts, Not The Hype - AppD Summit Europe
Containers: Give Me The Facts, Not The Hype - AppD Summit EuropeContainers: Give Me The Facts, Not The Hype - AppD Summit Europe
Containers: Give Me The Facts, Not The Hype - AppD Summit EuropeAppDynamics
 
RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?Erik Osterman
 
Essential Node.js for Web Developers from Developer Week 2013
Essential Node.js for Web Developers from Developer Week 2013Essential Node.js for Web Developers from Developer Week 2013
Essential Node.js for Web Developers from Developer Week 2013CA API Management
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolithMarkus Eisele
 
Managing Multiple Clouds in an Enteprise - A Heterogenous Lens
Managing Multiple Clouds in an Enteprise - A Heterogenous LensManaging Multiple Clouds in an Enteprise - A Heterogenous Lens
Managing Multiple Clouds in an Enteprise - A Heterogenous LensMayur Shintre
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolithMarkus Eisele
 
The future will be Serverless (FrontConf Munich 2017)
The future will be Serverless (FrontConf Munich 2017)The future will be Serverless (FrontConf Munich 2017)
The future will be Serverless (FrontConf Munich 2017)Luciano Mammino
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open SourceBertrand Delacretaz
 
Security Goodness with Ruby on Rails
Security Goodness with Ruby on RailsSecurity Goodness with Ruby on Rails
Security Goodness with Ruby on RailsSource Conference
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingMark Hinkle
 
Rapid prototyping with solr - By Erik Hatcher
Rapid prototyping with solr -  By Erik Hatcher Rapid prototyping with solr -  By Erik Hatcher
Rapid prototyping with solr - By Erik Hatcher lucenerevolution
 
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...Burr Sutter
 
Drupal In The Cloud
Drupal In The CloudDrupal In The Cloud
Drupal In The CloudBret Piatt
 
Amazon ECS (December 2015)
Amazon ECS (December 2015)Amazon ECS (December 2015)
Amazon ECS (December 2015)Julien SIMON
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open SourceBertrand Delacretaz
 

Similar to Ivo jansch - the art of scalability (20)

How NYTimes.com uses Amazon Web Services - AWS Summit 2011
How NYTimes.com uses Amazon Web Services - AWS Summit 2011How NYTimes.com uses Amazon Web Services - AWS Summit 2011
How NYTimes.com uses Amazon Web Services - AWS Summit 2011
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01
 
Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01Awssummit2011nytimesfinal com-110610112751-phpapp01
Awssummit2011nytimesfinal com-110610112751-phpapp01
 
Containers: Give Me The Facts, Not The Hype - AppD Summit Europe
Containers: Give Me The Facts, Not The Hype - AppD Summit EuropeContainers: Give Me The Facts, Not The Hype - AppD Summit Europe
Containers: Give Me The Facts, Not The Hype - AppD Summit Europe
 
RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?
 
Essential Node.js for Web Developers from Developer Week 2013
Essential Node.js for Web Developers from Developer Week 2013Essential Node.js for Web Developers from Developer Week 2013
Essential Node.js for Web Developers from Developer Week 2013
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolith
 
Managing Multiple Clouds in an Enteprise - A Heterogenous Lens
Managing Multiple Clouds in an Enteprise - A Heterogenous LensManaging Multiple Clouds in an Enteprise - A Heterogenous Lens
Managing Multiple Clouds in an Enteprise - A Heterogenous Lens
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolith
 
The future will be Serverless (FrontConf Munich 2017)
The future will be Serverless (FrontConf Munich 2017)The future will be Serverless (FrontConf Munich 2017)
The future will be Serverless (FrontConf Munich 2017)
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open Source
 
China user group keynote
China user group keynoteChina user group keynote
China user group keynote
 
Security Goodness with Ruby on Rails
Security Goodness with Ruby on RailsSecurity Goodness with Ruby on Rails
Security Goodness with Ruby on Rails
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
 
Rapid Prototyping with Solr
Rapid Prototyping with SolrRapid Prototyping with Solr
Rapid Prototyping with Solr
 
Rapid prototyping with solr - By Erik Hatcher
Rapid prototyping with solr -  By Erik Hatcher Rapid prototyping with solr -  By Erik Hatcher
Rapid prototyping with solr - By Erik Hatcher
 
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...
Teaching Elephants to Dance (Federal Audience): A Developer's Journey to Digi...
 
Drupal In The Cloud
Drupal In The CloudDrupal In The Cloud
Drupal In The Cloud
 
Amazon ECS (December 2015)
Amazon ECS (December 2015)Amazon ECS (December 2015)
Amazon ECS (December 2015)
 
Open Innovation means Open Source
Open Innovation means Open SourceOpen Innovation means Open Source
Open Innovation means Open Source
 

Recently uploaded

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Recently uploaded (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Ivo jansch - the art of scalability

  • 1. http://www.egeniq.com info@egeniq.com @egeniq The Art of Scalability Ivo Jansch / @ijansch Tweakers.net Developer Summit, March 24 2011
  • 2. What is Scalability? “[...] Scalability is the ability of a system, network, or process, to handle growing amounts of work in a graceful manner or its ability to be enlarged to accommodate that growth.” - Wikipedia 2
  • 3. Different levels of scale Pageviews/ Site # Servers Views / server month Facebook 200B 30K 6.6M Netlog 4B 600 6.6M Hyves 6.5B 3000 2.1M Tweakers 60M 15 4M Nu.nl 340M 14 24M (See end of slide deck for sources) 3
  • 4. Some of the tools at Netlog ‣ Content Delivery Network • http://www.akamai.com/ ‣ Search Engine • http://sphinxsearch.com/ • (Also have a look at http://lucene.apache.org/solr/) ‣ Database Replication 4
  • 5. Some of the tools at Hyves ‣ Caching • http://memcached.org/ ‣ Lightweight webserver • http://nginx.org/ ‣ Automated deployment • http://puppetlabs.com/ 5
  • 6. Some of the tools at Nu.nl ‣ Content pre-generation ‣ Varnish Edge Side Includes • http://www.varnish-software.com/ ‣ Distributed Job Queues • http://gearman.org/ * * nu.nl uses a custom job queue but this is one I can recommend 6
  • 7. Some of the tools at Facebook ‣ PHP -> C++ compiler • https://github.com/facebook/hiphop-php ‣ Distributed Logging • https://github.com/facebook/scribe ‣ NoSQL Storage • http://cassandra.apache.org/ 7
  • 8. How can you scale? Start with the basics 8
  • 9. Scaling with Hardware If you run your app on multiple servers today, would it work? Typical problem areas: ‣ Sessions ‣ Files 9
  • 11. A scalable funnel Load balancer Web Web Web Web Web Server Server Server Server Server Load balancer App App App Server Server Server Load balancer Database Services 11
  • 13. Scalable Architectures ‣ Service Oriented Architecture ‣ Component Based Design ‣ Abstraction 13
  • 14. Scalability in Software ‣ Caching ‣ Graceful Degradation 14
  • 15. Food for Thought Scaling Wisely 15
  • 16. Food for thought Remember, this talk is called: “The Art of Scalability” 16
  • 17. This is Art “House of Stairs” M.C. Escher 17
  • 18. But this is Art, too “Composition with Blue” Piet Mondriaan 18
  • 19. Moral of this story Scalability is about the ability to scale. Don’t scale prematurely. Keep it simple. 19
  • 20. “You’re doing it wrong!” “Scalability is the ability of a system, network, or process, to handle growing large amounts of work in a graceful manner or its ability to be enlarged to accommodate that growth.” 20
  • 21. http://www.egeniq.com info@egeniq.com @egeniq Thank you! Questions? http://www.egeniq.com ivo@egeniq.com @ijansch
  • 22. Sources The slide with servers and pageviews was based on: ‣ http://cns.ucsd.edu/lecturearchive09.shtml#Roth (Facebook) ‣ http://technologie.hyves.nl/ (Hyves) ‣ http://www.slideshare.net/folke/netlog-what-we-learned-about-scalability-high- availability-430211 (Netlog) ‣ http://www.slideshare.net/peter_ibuildings/surviving-a-plane-crash (Nu.nl) ‣ http://tweakers.net/reviews/331/5/tweakers-punt-net-faq-plans-stats-servers-en-site- software.html (Tweakers)
  • 23. Credits The following Creative Commons pictures were used in this presentation: ‣ ‘Datacenter Work’ by Leonardo Rizzi - http://www.flickr.com/photos/stars6/4381851322/ ‣ ‘Rubber Band Man’ by Abe Novy - http://flickr.com/photos/thenovys/3791884189/ ‣ ‘You’re doing it wrong’ by Adam Swank - http://www.flickr.com/photos/adeepbreath/3952587062/