You’re Making the Big Time!
You caught a big break and your site ended up on the front page of Reddit or lined up to air on Shark Tank. First of all, congrats on the success! This is only the beginning and you need to prepare yourself for what comes next because your environment is likely not ready for all that enthusiasm and traffic that comes along with it! This article is a high-level overview of things to consider when preparing for a high-traffic event. Truth be told, this won’t replace having good partners in this with you. If you don’t have a solid application/web developer and system admin, start with that!
- Load Balance your web and application servers via horizontal scaling
- Scale your database vertically and add replicas horizontally
- Every tier (web, app, database) needs to be highly available and redundant
- Server and application-level monitoring
- Minimize dynamic content on your website
- Maximize static content delivery over CDN
- Content and DNS Caching using Cloud Flare or Incapsula
- Create failover plans and understand your time to recovery
- Load Test using a provider like Loader io, Soasta, Loadview, etc
- Test some more and at every tier (web, app, and database)!!! Avoid the pitfall of spending tons of money on resources and not enough on testing
- Alert the your Support team via ticket for awareness of when you expect high traffic
- Actively monitor server and application monitoring metrics
- Collect data throughout the event to analyze after event ends
- Have your teams on stand by to be at the ready should you need to troubleshoot
- Limited which regions access your site via ACL’s can work in a pinch if your environment is struggling
- Should your environment crash under immense pressure, act diligently and swiftly to determine the quickest time to recovery. Now is not the time to make major changes that can further delay getting back online. Do your best to get your website back online and accessible to your intended audience.
- Scale down your environment to a baseline for normal operating
- Analyze how your environment performed at every tier (web, application, database, CMS, etc)
- Understand the root causes of any crashes or dips in performance
- If you’ve implemented break fixes due to a crash such as disabling search functions, limiting dynamic content, using a queue service to throttle traffic, and so on, work to revert those changes you’ve put in place
- Strategize for your next event.
We hope this guide served as a high-level overview of things to consider preparing for a high-traffic event, but also during and after the event. Knowledge is power, so the more you learn and take away from your high-traffic event the better!