4 Load Testing Tips to Stop Your Site from Crashing on Super Bowl Sunday
The countdown to Super Bowl Sunday is on! America’s biggest TV event of the year is notorious for its flashy commercials, beer consumption, buffalo wings….and website crashes.
Famous fails include when Acura's website went down for ten minutes after its hilarious commercial triggered a 3,000% increase in website page requests, and Coca Cola’s Facebook app featuring animated polar bears crashed under the strain.
If you’re a media streaming site, online food delivery chain, or have an commercial running during the break, you’ll have been performance testing your site for some time now. But have you missed something? Take a look at these four key culprits of website crashes before you sit back on the sofa with those buffalo wings:
4 Things to Check When Load Testing Your Site
1. Your Third Party Integrations
Your website or app might be able to handle the load - but your third party plugin or module could bring you down. Widgets and plugins like Google Analytics codes, ads, and social media icons can trigger the SPOF (Single Point of Failure) that will bring down your system.
TIPS: Apply asynchronous scripting, setup fallbacks, and check your contracts There are three tips here because each type of failure needs to be dealt with differently...
TIP A) Check your front end dependencies and make sure your third party integrations weren’t added synchronously - as this could bring your entire page down. Synchronous scripts block every subsequent element from rendering in the browser. So if your plugin or widget fails, the entire page will be blank for about 30 seconds. To avoid this, go through all your integrations and make sure they have been added asynchronously. This means that if there’s a problem with your plugin or widget, only its content will fail to appear and the rest of your page will look fine.
TIP B) Set up a ‘fallback’ for backend failures like API timeouts. Decide upon the limit you’re willing to wait until a call is considered a ‘failure’. Then, if there is a failure, know what action you’ll be taking (such as switching off the widget or ad in question). This isn’t perfect - but it’s better than letting it crash your entire site!
TIP C) Take a look at your contracts and make sure that you know ALL the limitations your third party providers.
2. Your Network Infrastructure
Your application might be running fine but, even if your application has a huge capacity, there could be a problem with your hosting server or external infrastructure. Failing to include your network infrastructure in your performance testing for big events puts your web or app at risk because you’re not monitoring all the chains of delivery.
TIP: Run the test live on your production site. Do it at a time when traffic is low (such as 4am on a Sunday morning) and make sure you’re stressing every point in the entire chain of delivery.
3. Your Critical Points
Finding bottlenecks is only half the solution. Once you’ve identified when you will hit a bottleneck, you then need to pinpoint precisely the underlying issue. If you don’t, these issues could resurface at the worst possible moment.
TIP: Check out what’s going on in your system. Are there critical messages in the log? Are the transactions taking too much time? Often there are literally thousands of metrics to measure. In such cases, it’s worth using Application Performance Monitoring (APM) tools like New Relic or AppDynamics to monitor the backend app and see where the bottlenecks occur.
You might also want to divide your system and stress each section individually. Web traffic isn’t going to be evenly distributed across the site. It could happen that a huge amount of traffic lands on one page in particular, you need to divide your system into logical sections and stress each one to be sure you can identify and fix all problems in every section of your system.
4. Your Traffic Predictions
It’s all too easy to underestimate the load likely to come to your site. One big mistake that many people make is to calculate the expected traffic in direct correlation to the past year’s business.
For example: if your customers have doubled since last year’s Super Bowl, you might assume that you’ll get twice the number of visitors this year. This is a huge mistake as there are many factors that could affect your website traffic on this day (for example: your commercial could be much funnier this year). If this happens, you might even get four or five times the number of visitors - and it will catch you unprepared.
TIP: Keep on testing until you find the point of failure. Don’t ever be satisfied with a successful test. You need to keep on increasing the load until you find out what, when, and how a failure will occur. Run a sequence of tests while increasing the load and keep monitoring the hits/s throughput until you hit a scaling problem.
WANT TO LEARN MORE?
Check out our joint webcast with New Relic “5 Ways to Test & Tune What Matters Most this Peak Season” for detailed information on how to get your website or application ready for any peak traffic event.