Performance Testing for a Very Large Scale Live Streaming Web Application

The Scenario

service 3

  • Testing of the web application for one of the world's biggest sporting events.
  • The application allows web users to see the live streaming of matches, highlights of matches, schedule of upcoming matches, etc.
  • Application accessed by up to 300,000 users from multiple geographical locations during the peak time and expected the sudden spike of 100,000 users at the time of live matches.

The Requirements

  • Performance testing of the application.
  • Testing of the application behavior during the spike time.
  • Fail over testing.
  • Recommendations for the required server configuration to support the large user base.

Challenges

  • Stringent timelines.
  • Simulating the behavior of 100,000+ concurrent users.
  • Testing for users from specific geographical locations.

Approach

  • Preparation of performance test strategy and test plan.
  • Selection of Blazemeter performance testing tool based on the requirements.
  • Preparation of load model and performance scripts based on the application key user scenarios.
  • Script execution based on geographical location of the users.
  • Simultaneous execution of load testing and spike testing as per the defined load model.
  • Rigorous execution of fail over testing.

The Paybacks

  • Performance Testing – Average response time optimized to <1 (from 5 seconds).
  • Fail-over Testing - Identified that the application takes more than 9 seconds to recover. Post recommended changes and optimization, application recovery time reduced to 3 seconds.
  • Spike Testing - Discovered application failure in case of sudden spike of large number of users. Through application optimization and optimum server configuration, the application is able to handle the expected spike.