SlideShare a Scribd company logo
1 of 23
THE CHALLENGES OF
SUPPORTING ONLINE LIVE
EVENTS WITH TV
PARTICIPATION NUMBERS
A STARTUP PERSPECTIVE

  Presentation for B.Sc students from IDC
  By Guy Tomer, November 2011
Hello
• I’m Guy Tomer
 • Founding and working in start-ups for the last
   13 years
 • Founder & CTO of attracTV for the last 4 years


• This Presentation is about
 • Building a scalable system for “a lot” of users
   • More specifically for handling usage peaks of live TV
     events on the internet
     • Even more specifically – how we tackle it as a small start-up
attracTV




Web based self-service solution and tools for
    managing viewers’ engagement and
      interaction on the online screen
 Social    Information   Advertisement   eCommerce
Our Use Case – MTV European Music
Awards
• One of the biggest online live streams ever
• Can’t expose precise numbers but
   • 7 digits ( > 1,000,000) – number of streams
   • 6 digits (> 100,000) –
     number of concurrent users
   • 5 digits (> 10,000) –
     number of users joining
     every minute at peak
• In addition
   • International event, 20
     sites, viewers from
     >150 countries
   • 9 languages
What Are The Challenges
1. Scaling for these numbers
2. Handling very steep ramp-up
3. Big data
4. High availability
5. Testing & preparing for such numbers
6. The cost of the above – how to do it and still make
   money

We’ll Discuss mainly 1,5 & 6
Some Big “Internet Scale” Examples
• Google Uses About 900,000 Servers
• (Map-Reduce) Google completed sorting a ten petabyte
    input set took 6 hours and 27 minutes to complete on
    8000 computers.
•   Facebook serves 1 trillion pages per months
•   (2010) 30 billion – Pieces of content (links, notes, photos,
    etc.) shared on Facebook per month.
•   (2010) 2 billion – The number of videos watched per day
    on YouTube.
•   Akamai, the “CDN to the starts” has 95811 (Q2 2011)
    servers, 1000 networks, 70 countries
Challenge 1 – Handling The Scale
• We are prepared for 400,000 concurrent viewers
• HTTP polling every 10<=N<=30 seconds
• This means ~20,000 HTTP R/S (requests per
  second)
• For comparison
 • Stack overflow recently reported 800 R/S
 • Sify.com (leading portal in India)
   reported 3900 R/S
 • Jobs' death resulted in a record
   breaking 10,000 tweets/s
  (they do have a lot more requests,
  that’s just to feel the scale)
What Is Scalability
• From Wikipedia“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.”
            Performance ≠ Scalability
The fact that your code runs very fast for
X users doesn’t mean your architecture
supports 100*X users.
Vertical Scalability (scale up)
• “Get a bigger server”
• “Use faster CPUs”
• Cons
  • Can only help so much (with bad scale/$ value).
  • A server twice as fast is more than
    twice as expensive
• Pros
  • Easier to manager less computers
  • Can use virtualization
Horizontal Scalability (scale out)
• “Just add another box” (or another thousand or
  ...)
• Plan the architecture right first, do micro
  optimizations later
• Pros
 • Unlimited theoretically
 • Works well with the cloud services elasticity
• Cons
  • More complex to manage
  • More complex programming models
Challenge #2 – Steep Ramp-up
• Live Event - Everyone comes at the same time
 Steep ramp-up                Standard website example (wikimedia)




• A car can drive 250k/h doesn’t mean it can do 0-
 100km/h in 4 seconds


                          ≠
Challenge #3 – Big Data
• From Wikipedia:

 “Big data are datasets that grow so large
  that they become awkward to work with
using on-hand database management tools”
• One of the biggest hypes in the industry today
• During this even we had ~10,000,000 records written to
  our analytics system per hour
• We’re not “Big Data” yet but
  it’s coming
Challenge #4 – High Availability
   “High availability refers to a system or
 component that is continuously operational
    for a desirably long length of time.”

• We need to meet a Service   High availability in the cloud
  Level of 99.9%
• Backup, failover systems
  are expensive
• The cloud is at our help
Challenge #5 – Testing
• Simulating 100s of thousands of concurrent
  users… not trivial
• Requires 10s of strong servers
• Very difficult to collect the data
• The cloud is at our help
Challenge #6 – Handling The Costs
Of Such Event (Hint- Elasticity)
• For production we used ~50 servers that have 4 cores
  with 2GH and 15GB RAM (m1.xl)
• Some options (rough estimation) for this are:
  • Buy - ~$3500 per box = $175,000. Not for us…

  • Dedicated server for a month - ~$1000 per instance =  $50,000
  • VPS (Virtual private server) monthly - ~300$ per box = $15,000

• Solution: Cloud on-demand (Amazon AWS) - ~$500 per
 instance = $25,000 for a month…. BUT
 … no need to take it for a month,
 we activate it on demand for 12 hours
 and it costs $416!
Our #1 Lesson - Think Horizontal!
• Why not vertical?
  • We don’t want it to be our business’s bottleneck at any
    point in time
  • We don’t want to buy giant servers
  • We wanted a cheap start
  • We want elasticity
  • We don’t want to buy anything at this point
• How? (deserves a separate lecture)
  • Everything in the architecture
  • No state shared between the web/app
    servers
  • No relation between the # of users
    and the load on the Database
Lesson #2 KISS
• Keep It Simple Stupid
• Your system architecture
• Your code
• Your features              Hug out all the complexity in your system
• Your business model


• If you don’t
 you won’t scale,
 from personal
 experience
Lesson #3 – Load Test Everything, Focus
    On Real World Usage Patterns
• We did massive stress testing
• We launched tens of servers just for stress testing
• Automated with Jmeter and monitored the same way as
    production
                                Why?
•   The only way to test your scaling capabilities
•   Looking at the code and manual tests are irrelevant
•   Measure the capacity of a single app server
•   Test the specific ramp-up scenario because
•   Example 1 app server = 5000 users, we need
    to support 200,000 users so we need to
    prepare at least 40 servers
Lesson #4 – S*t Happens, Don’t Save On
  Real-Time Monitoring and Support
• We had a series of successful big events before this one
• We launched tens of servers just for the stress testing
• And yet we had two problems during the event 
                                Why?
• Murphy is always (eventually) right…
• Because of a feature no one uses (see lesson #2 - KISS)
  that wasn’t active in the stress tests
• The specific usage of 9 languages caused unexpected load
  (see lesson #3 – stress real world scenarios)
Luckily the whole team was in
monitoring mode and the issues
were quickly handled on the fly.
Lesson #5 – Use The Cloud (startups)
• It’s Elastic, pay on demand
• Flexible when you don’t know your parameters
• Solution for affordable High Availability & Testing
• Focus on development
• I am not getting paid by Amazon – check
 others as well!
Summary - What To Remember?
• Scalability is the ability of a system to handle growing
    amount of work with additional resources
•   Think horizontal
•   Keep It Simple (Stupid) – everything
•   Stress test everything, focus on real world scenarios
•   Monitor and Real-Time support
•   Cloud is great for start-ups
The End

• Questions? Comments? Consulting           Preguntas?
  问题 ?
• Just Shy? Think you should be working in attracTV?
  Contact me:
guy.tomer@gmail.com
www.guytomer.com
Special Thanks (presentations, websites I “borrowed” from)
• Ask Bjørn Hansen
    (http://groups.google.com/group/scalable)
•   High Scalability blog http://highscalability.com/
•   http://royal.pingdom.com
•   Google images
•   Entourage (http://www.hbo.com/entourage/index.html)

More Related Content

What's hot

Rendering Takes Flight
Rendering Takes FlightRendering Takes Flight
Rendering Takes FlightAvere Systems
 
Kanban Basics for Beginners Revised
Kanban Basics for Beginners RevisedKanban Basics for Beginners Revised
Kanban Basics for Beginners RevisedZsolt Fabok
 
(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the Noise(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the NoiseAmazon Web Services
 
Introduction To Serverless Architecture
Introduction To Serverless ArchitectureIntroduction To Serverless Architecture
Introduction To Serverless ArchitectureBen Sherman
 
Cloud fail scaling to infinity but not beyond
Cloud fail   scaling to infinity but not beyondCloud fail   scaling to infinity but not beyond
Cloud fail scaling to infinity but not beyondKunal Johar
 
Site reliability in the serverless age - Serverless Boston Meetup
Site reliability in the serverless age  - Serverless Boston MeetupSite reliability in the serverless age  - Serverless Boston Meetup
Site reliability in the serverless age - Serverless Boston MeetupErik Peterson
 
Engineering Netflix Global Operations in the Cloud
Engineering Netflix Global Operations in the CloudEngineering Netflix Global Operations in the Cloud
Engineering Netflix Global Operations in the CloudJosh Evans
 
Quarterly Technology Briefing, Manchester, UK September 2013
Quarterly Technology Briefing, Manchester, UK September 2013Quarterly Technology Briefing, Manchester, UK September 2013
Quarterly Technology Briefing, Manchester, UK September 2013Thoughtworks
 
(ISM301) Engineering Netflix Global Operations In The Cloud
(ISM301) Engineering Netflix Global Operations In The Cloud(ISM301) Engineering Netflix Global Operations In The Cloud
(ISM301) Engineering Netflix Global Operations In The CloudAmazon Web Services
 
Embracing Failure - Fault Injection and Service Resilience at Netflix
Embracing Failure - Fault Injection and Service Resilience at NetflixEmbracing Failure - Fault Injection and Service Resilience at Netflix
Embracing Failure - Fault Injection and Service Resilience at NetflixJosh Evans
 
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...Amazon Web Services
 
The Java Evolution Mismatch - Why You Need a Better JVM
The Java Evolution Mismatch - Why You Need a Better JVMThe Java Evolution Mismatch - Why You Need a Better JVM
The Java Evolution Mismatch - Why You Need a Better JVMAzul Systems Inc.
 
Kanban - A Crash Course
Kanban - A Crash CourseKanban - A Crash Course
Kanban - A Crash CourseSam McAfee
 
Ciso executive summit 2012
Ciso executive summit 2012Ciso executive summit 2012
Ciso executive summit 2012Bill Burns
 
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...Amazon Web Services
 
Accelerate application delivery with docker containers and windows server 2016
Accelerate application delivery with docker containers and windows server 2016Accelerate application delivery with docker containers and windows server 2016
Accelerate application delivery with docker containers and windows server 2016Taylor Brown
 
1Spatial: Cardiff FME World Tour: Getting started with FME
1Spatial: Cardiff FME World Tour: Getting started with FME1Spatial: Cardiff FME World Tour: Getting started with FME
1Spatial: Cardiff FME World Tour: Getting started with FME1Spatial
 

What's hot (19)

Rendering Takes Flight
Rendering Takes FlightRendering Takes Flight
Rendering Takes Flight
 
Kanban Basics for Beginners Revised
Kanban Basics for Beginners RevisedKanban Basics for Beginners Revised
Kanban Basics for Beginners Revised
 
Scaling the guardian
Scaling the guardianScaling the guardian
Scaling the guardian
 
(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the Noise(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the Noise
 
Introduction To Serverless Architecture
Introduction To Serverless ArchitectureIntroduction To Serverless Architecture
Introduction To Serverless Architecture
 
Cloud fail scaling to infinity but not beyond
Cloud fail   scaling to infinity but not beyondCloud fail   scaling to infinity but not beyond
Cloud fail scaling to infinity but not beyond
 
Site reliability in the serverless age - Serverless Boston Meetup
Site reliability in the serverless age  - Serverless Boston MeetupSite reliability in the serverless age  - Serverless Boston Meetup
Site reliability in the serverless age - Serverless Boston Meetup
 
Engineering Netflix Global Operations in the Cloud
Engineering Netflix Global Operations in the CloudEngineering Netflix Global Operations in the Cloud
Engineering Netflix Global Operations in the Cloud
 
Quarterly Technology Briefing, Manchester, UK September 2013
Quarterly Technology Briefing, Manchester, UK September 2013Quarterly Technology Briefing, Manchester, UK September 2013
Quarterly Technology Briefing, Manchester, UK September 2013
 
(ISM301) Engineering Netflix Global Operations In The Cloud
(ISM301) Engineering Netflix Global Operations In The Cloud(ISM301) Engineering Netflix Global Operations In The Cloud
(ISM301) Engineering Netflix Global Operations In The Cloud
 
Embracing Failure - Fault Injection and Service Resilience at Netflix
Embracing Failure - Fault Injection and Service Resilience at NetflixEmbracing Failure - Fault Injection and Service Resilience at Netflix
Embracing Failure - Fault Injection and Service Resilience at Netflix
 
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
 
The Java Evolution Mismatch - Why You Need a Better JVM
The Java Evolution Mismatch - Why You Need a Better JVMThe Java Evolution Mismatch - Why You Need a Better JVM
The Java Evolution Mismatch - Why You Need a Better JVM
 
Kanban - A Crash Course
Kanban - A Crash CourseKanban - A Crash Course
Kanban - A Crash Course
 
Ciso executive summit 2012
Ciso executive summit 2012Ciso executive summit 2012
Ciso executive summit 2012
 
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
More Nines for Your Dimes: Improving Availability and Lowering Costs using Au...
 
The guardian and app engine
The guardian and app engineThe guardian and app engine
The guardian and app engine
 
Accelerate application delivery with docker containers and windows server 2016
Accelerate application delivery with docker containers and windows server 2016Accelerate application delivery with docker containers and windows server 2016
Accelerate application delivery with docker containers and windows server 2016
 
1Spatial: Cardiff FME World Tour: Getting started with FME
1Spatial: Cardiff FME World Tour: Getting started with FME1Spatial: Cardiff FME World Tour: Getting started with FME
1Spatial: Cardiff FME World Tour: Getting started with FME
 

Viewers also liked

How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scale
How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scaleHow LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scale
How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scaleLinkedIn
 
Storage Systems for High Scalable Systems Presentation
Storage Systems for High Scalable Systems PresentationStorage Systems for High Scalable Systems Presentation
Storage Systems for High Scalable Systems Presentationandyman3000
 
Modernizing with microservices and fast data
Modernizing with microservices and fast dataModernizing with microservices and fast data
Modernizing with microservices and fast dataPatrick Di Loreto
 
Gibtalk aws
Gibtalk awsGibtalk aws
Gibtalk awsmeliphen
 
Diaporama Amazon Cloud Drive
Diaporama Amazon Cloud DriveDiaporama Amazon Cloud Drive
Diaporama Amazon Cloud DriveAlex-ia
 
Reactive Architecture
Reactive ArchitectureReactive Architecture
Reactive ArchitectureAssaf Gannon
 
Dans les coulisses de Google BigQuery - Meetup Toulouse Data Science
Dans les coulisses de Google BigQuery - Meetup Toulouse Data ScienceDans les coulisses de Google BigQuery - Meetup Toulouse Data Science
Dans les coulisses de Google BigQuery - Meetup Toulouse Data ScienceAurélie Vache
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event ProcessingJohn Plummer
 
The Art of Scalability - Managing growth
The Art of Scalability - Managing growthThe Art of Scalability - Managing growth
The Art of Scalability - Managing growthLorenzo Alberton
 
Intro to functional programming
Intro to functional programmingIntro to functional programming
Intro to functional programmingAssaf Gannon
 
Scaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesScaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesLorenzo Alberton
 
Facebook chat architecture
Facebook chat architectureFacebook chat architecture
Facebook chat architectureUdaya Kiran
 
Architecture Patterns - Open Discussion
Architecture Patterns - Open DiscussionArchitecture Patterns - Open Discussion
Architecture Patterns - Open DiscussionNguyen Tung
 
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.Rishikese MR
 
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...Amazon Web Services
 
High Scalability by Example – How can Web-Architecture scale like Facebook, T...
High Scalability by Example – How can Web-Architecture scale like Facebook, T...High Scalability by Example – How can Web-Architecture scale like Facebook, T...
High Scalability by Example – How can Web-Architecture scale like Facebook, T...Robert Mederer
 
eBay Architecture
eBay Architecture eBay Architecture
eBay Architecture Tony Ng
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & FeaturesDataStax Academy
 

Viewers also liked (20)

How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scale
How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scaleHow LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scale
How LinkedIn uses memcached, a spoonful of SOA, and a sprinkle of SQL to scale
 
Storage Systems for High Scalable Systems Presentation
Storage Systems for High Scalable Systems PresentationStorage Systems for High Scalable Systems Presentation
Storage Systems for High Scalable Systems Presentation
 
Modernizing with microservices and fast data
Modernizing with microservices and fast dataModernizing with microservices and fast data
Modernizing with microservices and fast data
 
Gibtalk aws
Gibtalk awsGibtalk aws
Gibtalk aws
 
Diaporama Amazon Cloud Drive
Diaporama Amazon Cloud DriveDiaporama Amazon Cloud Drive
Diaporama Amazon Cloud Drive
 
Reactive Architecture
Reactive ArchitectureReactive Architecture
Reactive Architecture
 
Dans les coulisses de Google BigQuery - Meetup Toulouse Data Science
Dans les coulisses de Google BigQuery - Meetup Toulouse Data ScienceDans les coulisses de Google BigQuery - Meetup Toulouse Data Science
Dans les coulisses de Google BigQuery - Meetup Toulouse Data Science
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event Processing
 
The Art of Scalability - Managing growth
The Art of Scalability - Managing growthThe Art of Scalability - Managing growth
The Art of Scalability - Managing growth
 
Intro to functional programming
Intro to functional programmingIntro to functional programming
Intro to functional programming
 
Scaling Teams, Processes and Architectures
Scaling Teams, Processes and ArchitecturesScaling Teams, Processes and Architectures
Scaling Teams, Processes and Architectures
 
Facebook chat architecture
Facebook chat architectureFacebook chat architecture
Facebook chat architecture
 
Architecture Patterns - Open Discussion
Architecture Patterns - Open DiscussionArchitecture Patterns - Open Discussion
Architecture Patterns - Open Discussion
 
Une introduction à Hive
Une introduction à HiveUne introduction à Hive
Une introduction à Hive
 
Spotify: Data center & Backend buildout
Spotify: Data center & Backend buildoutSpotify: Data center & Backend buildout
Spotify: Data center & Backend buildout
 
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.
 
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...
Creating Your Virtual Data Center: Amazon VPC Fundamentals and Connectivity O...
 
High Scalability by Example – How can Web-Architecture scale like Facebook, T...
High Scalability by Example – How can Web-Architecture scale like Facebook, T...High Scalability by Example – How can Web-Architecture scale like Facebook, T...
High Scalability by Example – How can Web-Architecture scale like Facebook, T...
 
eBay Architecture
eBay Architecture eBay Architecture
eBay Architecture
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & Features
 

Similar to The challenges of live events scalability

Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best PracticesPavel Mička
 
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Databricks
 
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...Startupfest
 
Canary Analyze All The Things: How We Learned to Keep Calm and Release Often
Canary Analyze All The Things: How We Learned to Keep Calm and Release OftenCanary Analyze All The Things: How We Learned to Keep Calm and Release Often
Canary Analyze All The Things: How We Learned to Keep Calm and Release OftenC4Media
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)Amazon Web Services
 
Using Hystrix to Build Resilient Distributed Systems
Using Hystrix to Build Resilient Distributed SystemsUsing Hystrix to Build Resilient Distributed Systems
Using Hystrix to Build Resilient Distributed SystemsMatt Jacobs
 
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Amazon Web Services
 
AWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAmazon Web Services
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and ServicePaulo Gaspar
 
Scaling Systems: Architectures that grow
Scaling Systems: Architectures that growScaling Systems: Architectures that grow
Scaling Systems: Architectures that growGibraltar Software
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
 
Serverless Toronto helps Startups
Serverless Toronto helps StartupsServerless Toronto helps Startups
Serverless Toronto helps StartupsDaniel Zivkovic
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes Abdul Basit Munda
 
The Hard Problems of Continuous Deployment
The Hard Problems of Continuous DeploymentThe Hard Problems of Continuous Deployment
The Hard Problems of Continuous DeploymentTimothy Fitz
 
IBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksIBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksDejan Glozic
 
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...Amazon Web Services
 

Similar to The challenges of live events scalability (20)

Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New Contexts
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best Practices
 
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
 
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...
Jeremy Edberg (MinOps ) - How to build a solid infrastructure for a startup t...
 
Canary Analyze All The Things: How We Learned to Keep Calm and Release Often
Canary Analyze All The Things: How We Learned to Keep Calm and Release OftenCanary Analyze All The Things: How We Learned to Keep Calm and Release Often
Canary Analyze All The Things: How We Learned to Keep Calm and Release Often
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
 
Using Hystrix to Build Resilient Distributed Systems
Using Hystrix to Build Resilient Distributed SystemsUsing Hystrix to Build Resilient Distributed Systems
Using Hystrix to Build Resilient Distributed Systems
 
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
 
AWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWS
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and Service
 
Scaling Systems: Architectures that grow
Scaling Systems: Architectures that growScaling Systems: Architectures that grow
Scaling Systems: Architectures that grow
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Microservices vs monolithics betabeers
Microservices vs monolithics   betabeersMicroservices vs monolithics   betabeers
Microservices vs monolithics betabeers
 
Serverless Toronto helps Startups
Serverless Toronto helps StartupsServerless Toronto helps Startups
Serverless Toronto helps Startups
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes
 
The Hard Problems of Continuous Deployment
The Hard Problems of Continuous DeploymentThe Hard Problems of Continuous Deployment
The Hard Problems of Continuous Deployment
 
IBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksIBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New Tricks
 
Deploying at will - SEI
 Deploying at will - SEI Deploying at will - SEI
Deploying at will - SEI
 
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
AWS Customer Presentation - Thomson Reuters - Delivering on the Promise of Di...
 

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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
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 Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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
 

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...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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 Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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 challenges of live events scalability

  • 1. THE CHALLENGES OF SUPPORTING ONLINE LIVE EVENTS WITH TV PARTICIPATION NUMBERS A STARTUP PERSPECTIVE Presentation for B.Sc students from IDC By Guy Tomer, November 2011
  • 2. Hello • I’m Guy Tomer • Founding and working in start-ups for the last 13 years • Founder & CTO of attracTV for the last 4 years • This Presentation is about • Building a scalable system for “a lot” of users • More specifically for handling usage peaks of live TV events on the internet • Even more specifically – how we tackle it as a small start-up
  • 3. attracTV Web based self-service solution and tools for managing viewers’ engagement and interaction on the online screen Social Information Advertisement eCommerce
  • 4. Our Use Case – MTV European Music Awards • One of the biggest online live streams ever • Can’t expose precise numbers but • 7 digits ( > 1,000,000) – number of streams • 6 digits (> 100,000) – number of concurrent users • 5 digits (> 10,000) – number of users joining every minute at peak • In addition • International event, 20 sites, viewers from >150 countries • 9 languages
  • 5. What Are The Challenges 1. Scaling for these numbers 2. Handling very steep ramp-up 3. Big data 4. High availability 5. Testing & preparing for such numbers 6. The cost of the above – how to do it and still make money We’ll Discuss mainly 1,5 & 6
  • 6. Some Big “Internet Scale” Examples • Google Uses About 900,000 Servers • (Map-Reduce) Google completed sorting a ten petabyte input set took 6 hours and 27 minutes to complete on 8000 computers. • Facebook serves 1 trillion pages per months • (2010) 30 billion – Pieces of content (links, notes, photos, etc.) shared on Facebook per month. • (2010) 2 billion – The number of videos watched per day on YouTube. • Akamai, the “CDN to the starts” has 95811 (Q2 2011) servers, 1000 networks, 70 countries
  • 7. Challenge 1 – Handling The Scale • We are prepared for 400,000 concurrent viewers • HTTP polling every 10<=N<=30 seconds • This means ~20,000 HTTP R/S (requests per second) • For comparison • Stack overflow recently reported 800 R/S • Sify.com (leading portal in India) reported 3900 R/S • Jobs' death resulted in a record breaking 10,000 tweets/s (they do have a lot more requests, that’s just to feel the scale)
  • 8. What Is Scalability • From Wikipedia“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.” Performance ≠ Scalability The fact that your code runs very fast for X users doesn’t mean your architecture supports 100*X users.
  • 9. Vertical Scalability (scale up) • “Get a bigger server” • “Use faster CPUs” • Cons • Can only help so much (with bad scale/$ value). • A server twice as fast is more than twice as expensive • Pros • Easier to manager less computers • Can use virtualization
  • 10. Horizontal Scalability (scale out) • “Just add another box” (or another thousand or ...) • Plan the architecture right first, do micro optimizations later • Pros • Unlimited theoretically • Works well with the cloud services elasticity • Cons • More complex to manage • More complex programming models
  • 11. Challenge #2 – Steep Ramp-up • Live Event - Everyone comes at the same time Steep ramp-up Standard website example (wikimedia) • A car can drive 250k/h doesn’t mean it can do 0- 100km/h in 4 seconds ≠
  • 12. Challenge #3 – Big Data • From Wikipedia: “Big data are datasets that grow so large that they become awkward to work with using on-hand database management tools” • One of the biggest hypes in the industry today • During this even we had ~10,000,000 records written to our analytics system per hour • We’re not “Big Data” yet but it’s coming
  • 13. Challenge #4 – High Availability “High availability refers to a system or component that is continuously operational for a desirably long length of time.” • We need to meet a Service High availability in the cloud Level of 99.9% • Backup, failover systems are expensive • The cloud is at our help
  • 14. Challenge #5 – Testing • Simulating 100s of thousands of concurrent users… not trivial • Requires 10s of strong servers • Very difficult to collect the data • The cloud is at our help
  • 15. Challenge #6 – Handling The Costs Of Such Event (Hint- Elasticity) • For production we used ~50 servers that have 4 cores with 2GH and 15GB RAM (m1.xl) • Some options (rough estimation) for this are: • Buy - ~$3500 per box = $175,000. Not for us… • Dedicated server for a month - ~$1000 per instance = $50,000 • VPS (Virtual private server) monthly - ~300$ per box = $15,000 • Solution: Cloud on-demand (Amazon AWS) - ~$500 per instance = $25,000 for a month…. BUT … no need to take it for a month, we activate it on demand for 12 hours and it costs $416!
  • 16. Our #1 Lesson - Think Horizontal! • Why not vertical? • We don’t want it to be our business’s bottleneck at any point in time • We don’t want to buy giant servers • We wanted a cheap start • We want elasticity • We don’t want to buy anything at this point • How? (deserves a separate lecture) • Everything in the architecture • No state shared between the web/app servers • No relation between the # of users and the load on the Database
  • 17. Lesson #2 KISS • Keep It Simple Stupid • Your system architecture • Your code • Your features Hug out all the complexity in your system • Your business model • If you don’t you won’t scale, from personal experience
  • 18. Lesson #3 – Load Test Everything, Focus On Real World Usage Patterns • We did massive stress testing • We launched tens of servers just for stress testing • Automated with Jmeter and monitored the same way as production Why? • The only way to test your scaling capabilities • Looking at the code and manual tests are irrelevant • Measure the capacity of a single app server • Test the specific ramp-up scenario because • Example 1 app server = 5000 users, we need to support 200,000 users so we need to prepare at least 40 servers
  • 19. Lesson #4 – S*t Happens, Don’t Save On Real-Time Monitoring and Support • We had a series of successful big events before this one • We launched tens of servers just for the stress testing • And yet we had two problems during the event  Why? • Murphy is always (eventually) right… • Because of a feature no one uses (see lesson #2 - KISS) that wasn’t active in the stress tests • The specific usage of 9 languages caused unexpected load (see lesson #3 – stress real world scenarios) Luckily the whole team was in monitoring mode and the issues were quickly handled on the fly.
  • 20. Lesson #5 – Use The Cloud (startups) • It’s Elastic, pay on demand • Flexible when you don’t know your parameters • Solution for affordable High Availability & Testing • Focus on development • I am not getting paid by Amazon – check others as well!
  • 21. Summary - What To Remember? • Scalability is the ability of a system to handle growing amount of work with additional resources • Think horizontal • Keep It Simple (Stupid) – everything • Stress test everything, focus on real world scenarios • Monitor and Real-Time support • Cloud is great for start-ups
  • 22. The End • Questions? Comments? Consulting Preguntas? 问题 ? • Just Shy? Think you should be working in attracTV? Contact me: guy.tomer@gmail.com www.guytomer.com
  • 23. Special Thanks (presentations, websites I “borrowed” from) • Ask Bjørn Hansen (http://groups.google.com/group/scalable) • High Scalability blog http://highscalability.com/ • http://royal.pingdom.com • Google images • Entourage (http://www.hbo.com/entourage/index.html)

Editor's Notes

  1. If you only remember one thing from this presentation this should be it
  2. If you only remember two thingsfrom this presentation this should be it
  3. If you only remember two thingsfrom this presentation this should be it
  4. If you only remember two thingsfrom this presentation this should be it