Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scaling For Planned Events

Brian Akins
September 25, 2014

Scaling For Planned Events

Theory, Practice, and Aftermath

Brian Akins

September 25, 2014
Tweet

More Decks by Brian Akins

Other Decks in Programming

Transcript

  1. About @bakins • OmniTI - Senior Principal Architect • Horrible

    public speaker • Old school C guy • Operations and Development • Wife and four kids in Atlanta, Georgia
  2. What is a “Planned Event” • Event on existing site

    • Single or repeating • Immovable dates • Elections, sporting events, etc.
  3. Ideally • Event handled via normal site operations • Business

    goals clearly defined • Clearly defined schedule • Realistic traffic/capacity models
  4. Reality • Competing business goals • Heroic scaling efforts often

    needed • Last minute feature additions • Real money tied to sponsorships • Can’t be tested in production until the event
  5. Cache Everything? • If possible… • Introduce caching layer in

    proxy mode early • Is your site really “dynamic”? • Need buy-in from all parties: dev, biz, ops, etc
  6. Feature Creep • Company X will give us $Y is

    we do feature Z • Deals are usually signed late • Competing priorities • Testing schedule compressed - or eliminated
  7. Degradation Planning • Decide before the event - you only

    get one chance • What features are most “important”? • Most impactful • Playbook: if/when X, then Y • Feature flags • “Benevolent dictator”
  8. Dependencies • Know your dependencies • Direct • Indirect •

    Third party • Find the bottlenecks • Include these services in your planning
  9. Event Operations • Physical and virtual “war rooms” • Business

    liaison • Do a post-mortem, good or bad • Archive metrics
  10. Easy One • Sports site using PHP-platform • Once a

    year event • Poor cache-invalidation methods • increase TTL before event, etc
  11. “Waiting Room” • “Legacy” video delivery services • Capacity reservations

    • Do not return an error to user • “Distract” the user
  12. Unexpected ending • Last episode of popular TV show •

    Fragile stack • “Controversial” ending to show • Two orders of magnitude more traffic on site than expected