Solutions and Activities
We embarked on an extensive load testing strategy, developing JMeter scripts tailored for both HLS and DASH protocols with varied streaming qualities. We designed this approach in order to simulate diverse user scenarios and bandwidth consumption patterns, closely mirroring real-world demands.
In collaboration with the CDN provider, we determined the necessity of utilizing 500 engines from multiple locations to effectively simulate the targeted scale of 85,000 concurrent virtual users. This setup was crucial for achieving the desired scenario, aligning with the high-volume streaming requirements of the project.
We harnessed Taurus and BlazeMeter for precise test configurations and effective load distribution. Our goal was to generate a load streaming near 100 Gbps of video. We employed Taurus, an open-source test automation tool, to define test configurations and used JMeter to distribute the load as per the planned pattern.
We also enhanced our testing process with an HLS plugin (video streaming plugin), developed by our team, which added finesse to our testing process, enabling granular control over streaming parameters. This plugin replicates the behavior of typical video streaming client applications, enabling users to download a playlist file and then load it in separate video portions.
It supports both HLS and DASH protocols and allows for the selection of subtitles, audio tracks, and video variants. This way, it simplifies the stress-testing of video streaming protocols and provides user-friendly statistics and reports.