Revisit Amazon Web Services re:Invent 2024’s biggest moments and watch keynotes and innovation talks on demand

 ✕

Homepage  »  Amazon Web Services Solutions  »  App Development & DevOps  »  Distributed Load Testing Platform

Distributed Load Testing Platform

Load testing tool for web application performance testing

Homepage  »  Amazon Web Services Solutions  »  App Development & DevOps  »  Distributed Load Testing Platform

Distributed Load Testing Platform

Load testing tool for web application performance testing

Overview

Amazon Web Services offers customers a scalable, distributed, and serverless architecture to deliver a load testing tool for web application performance testing. This solution automatically launches and configures containers running on Amazon Fargate to help you easily create and simulate thousands of virtual users generating specific number of requests payload per second without having to provision servers. This solution aiming to evaluate system potential performance bottleneck and infrastructure capacity are correctly planned ahead of application official release.

Features

Serverless Architecture

You don't need to manage and operate cloud compute resources. According to the number of concurrent requests that you configured on the UI dashboard, the Amazon ECS Fargate will allocate, schedule and scale necessary resources.

Visualization

Distributed Load Testing Platform includes an Amazon CloudWatch dashboard that displays the output of all tasks that are part of your automated test in near real time.

Open Source & Customization

All modules including load engine, test framework, test schedule logic and test dashboard are open-sourced, which means you can easily integrate, customize the solution based on your specific needs.

Cost Optimization

The Total Cost of Ownership (TCO) of the solution is lower than SaaS products of the same kind. You only pay for the used cloud resources on demand.

Technical details

The diagram below presents the architecture you can automatically deploy using the solution's implementation guide and accompanying Amazon CloudFormation template.

Architecture of Serverless Image Handler

Architecture Description

The solution uses Amazon CloudFormation to deploy the distributed load testing platform. This solution is consist of the following modules:

  • A test scheduling module based on Amazon API Gateway, Amazon Step Functions, and Amazon Lambda. The module leverages Amazon Step Functions to orchestrate the test process and uses Amazon Lambda to trigger Amazon Elastic Container Service(Amazon ECS) Fargate to start the container cluster to execute the test scripts in parallel.
  • A load engine module based on Amazon ECS Fargate. The Amazon ECS Fargate is responsible for creating, scaling, and deconstructing the container cluster resources. After a task of a cluster is completed, the test results will be stored in Amazon S3 in .xml format for further processing.
  • A web console module based on Amazon Amplify, Amazon S3, and Amazon CloudFront
  • A storage module for storing test data, based on Amazon DynamoDB and Amazon S3. After all the specified tasks are completed, the test results will be aggregated and stored in Amazon DynamoDB. Amazon CloudWatch will be used to display the corresponding metrics.

Note that when launching Amazon CloudFormation, you need to enter your own registered domain name (CNAME) to associate with Amazon CloudFront. After the solution is deployed, you can access the web console through the CNAME to create test cases, monitor the test process and view test results, etc.

In addition, the solution creates an Amazon Virtual Private Cloud (Amazon VPC). The VPC provides a safe, reliable, flexible, and configurable virtual network for Amazon ECS Fargate container clusters.

The solution is based on an open-source test automation framework called “Taurus”. Taurus is used to generate load to test the performance of your applications. During the deployment, the solution will pull a Docker image that contains Taurus and its dependencies (https://gallery.ecr.aws/p9r6s5p7/dlt) from Amazon ECR Public Gallery. In consideration of security and network performance, you can also pull and store images into your own Amazon Elastic Container Registry(Amazon ECR).

App Development & DevOps

Rapidly and reliably build and deliver products using DevOps practices.

Amazon Web Services Solutions

Explore the Amazon Web Services solutions library.

Use cases for this Amazon Web Services Solution
App Development & DevOps
About this deployment
Version
1.2.1

Released
04/2021

Author
Amazon Web Services

Est. deployment time
30 min
Source code 
Deployment options
Ready to get started?
Deploy this solution by launching it in your Amazon Web Services Console

Launch solution in the Amazon Web Services Beijing Region
Launch solution in the Amazon Web Services Ningxia Region
探索所有亚马逊云科技解决方案
Explore all Amazon Web Services Solutions

Browse our portfolio of Amazon Web Services -built solutions to common architectural problems.

Learn more 
查找合作伙伴
Find a Partner

Find Amazon Web Services certified consulting and technology partners to help you get started.

Learn more 
开始在控制台中构建
Start building in the console

Sign-up and start exploring our services.

Get started