A Three-Tier Load Testing Program Saved Our Bacon
Ensuring a website will scale with excellent performance under peak levels of load is no easy task. Any number of problems can occur—from switch hardware failure to third party service outages, to a poor choice of algorithms or memory use in the code. Melissa Chawla describes Shutterfly's three-tiered approach to prevent site outages during peak load. First, check the development team's designs for scalability by holding performance design reviews for each project including identifying throughput requirements for all down-stream resources. Second, automate continuous load testing of individual web services running against a non-production test environment. And third, load test client applications in concert against production systems. Melissa provides examples of defects Shutterfly has identified and prevented with each of these three types of testing, and describes the tool set Shutterfly uses. Join Melissa as she shares some of the challenges they faced, including the test environment to be as performant as production.