Follow us

AWS Distributed Load Testing Solution

We all have common question, when we migrate application to AWS or any other environment that, how my application performance is now and how it scaling on different load.

AWS provide Distributed Load Testing Solution, to implementation automates software applications testing at scale and at load to help you identify potential performance issues before their release. It creates and simulates thousands of connected users generating transactional records at a constant pace without the need to provision servers.

 

Distributed load testing is part of AWS solution, so this is not service you will find with AWS console. To implement this, you have to find this service from AWS solution page and then from there, it provide option to use their cloud formation template to get related services created to your account and after wards, it provide one URL(UI) option where you would be able to setup test and run.

 

Note: When you use cloud formation, in backend it create/configure many related services like DynamodDB table to store the test configuration setup, S3 bucket to hold test execution result, Lambda functions to process the tests and log the result to DynamodDB as per test configured, and also when you run test, it actually run on container (ESC), so it create those containers on run and automatically get dropped when run is finished.

 

Demo:

Go to AWS solution page and there go to explore AWS solution implementation :  https://aws.amazon.com/solutions/

aws 
re:lnvent 
C 
Products 
https://aws.amazon.com/solutions/ 
Solutions Pricing 
Documentation 
Leam 
Partner Network 
Contact Us Support. Eng' 
AWS Marketplace Customer Enablement 
O 
o 
I want to browse a library of AWS- 
vetted architecture diagrams as a 
reference for my project 
Explore AWS Solutions Reference 
Architectures » 
I want to combine pre-built, well- 
architected multi-service patterns to 
create my ovum solutions 
Explore AWS Solutions Constructs » 
I want to deploy vetted architecture 
directly into my AWS account 
Explore AWS Solutions 
Implementations » 
About AWS Solutions Reference Architectures 
AWS Solutions Reference Architectures are a collection of architecture diagrams, created by AWS. They provide prescriptive guidance for dou

 

Search for "Distributed load test" and then navigate to that link and it will open up the documentation page:

https: 
aws 
re:lnvent Products Solutions 
Filter AWS Solutions 
Implementations by: 
Clear all filters 
Content Type 
Contact Us 
Support. 
Pricing 
Documentation 
Leam 
Partner Network 
AWS Marketplace Customer Enablement 
AWS Solutions Implementations 
AWS Quick Starts 
Technology Category 
Analytics 
Application Integration 
Blockchain 
Cloud Financial Management 
Q load testing 
COMPUTE I DEVELOPER TOOLS 
Distributed Load Testing o 
AWS 
Bu i It by AWS 
Deploy a solution that provisions the 
products and services necessary to 
automate application load testing.

 

C 
https://aws.amazon.com/solutions/implementations/distributed - load sl_card 
aws 
re:lnvent 
Products Solutions 
bad •stirg API 
Pricing 
Documentation 
Amazon S3 
Leam 
Partner Network 
Contact Us Support. English. My Account. 
AWS Marketplace Customer Enablement Events Explore More 
Estimated cost ? 
Source Code 
CloudFormation template C? 
Arrgzon Ch'namoDB 
AWS 
n ECS 
AWS F 
Am-azon Cloud Watch 
Amazon 
Q Click to enlarge 
Aws IAM 
Distributed Load Testing on AWS architecture 
The AWS CloudFormation template deploys the following resources: 
View implementation guide 
Launch in the AWS Console 
Deploy with an AWS IQ expert 
Deployment resources 
Download implementation guide

 

From above screenshot(documentation page), use "Launch in the AWS console" option, which will land you to the AWS console cloud formation create screen and by default, template from S3 will be selected to created. (Make sure you are already logged in with AWS console).

Sewices 
Q Search for services, feotures. blogs. docs. and more 
[Alt+S] 
CloudFormation > Stacks > Create stack 
Step 1 
S 'k cify template 
Step 2 
Specify stack details 
Step 3 
Configure stack options 
Step 4 
Create stack 
Prerequisite - Prepare template 
Prepare template 
is a æmplata A template a YAML file inf.tim the AWS r— include in 
O Template is ready 
Specify template 
C) use a sample template 
C) Create template in Designer 
A is a 'SON or YAML me stacks 
Template source 
Selecting a æmp"ate S3 URL it will be 
O Amazon SS URL 
Amazon SS URL 
o 
Upload a template file 
https: _amazo naws_ co m 'solu tions- refe rence/distrib u ted- load- testing -on-aws/la test,'distr ibuted-loa d -te sting -on-a ws. te mpla te 
SS LIRE https://sg.amazonaws.com/solutions-reference/distributed-load-testing-on-aws/latest/distributed-load-testing-on-aw 
stem plate 
View in 
Designer 
Cancel

 

Use Next click and here, you need to provide "Admin user name" and "email id" and this user name would be require to do login with distributed load testing UI and password for this user will be sent to the email id you will enter here and then on first login, you will ask to change your password.

CloudFormation 
Step 
Specify template 
Step 2 
Stacks 
S'kcify stack details 
Step 3 
Configure stack options 
Step 4 
Create stack 
Specify stack details 
Stack name 
Stack name 
Enter o stock name 
Stack include letteÆ (0-91. 
Parameters 
and A. 
Wameteß in md to ".put valuæ or update a stack 
Console access 
• Console Administrator Name 
Admin name to me Tsting —le 
• Console Administrator Email 
Admin email to aQss the Dist'ibuted Tsting 
Enter values here to use your own existing VPC 
The ID of an existing VPC in this region. Ex: •vpc-Ia2b3c4d5e6f• 
Existing vpc ID

 

Once you finish all the steps, it will take few minutes to complete and then from output tab, you will find the distributed load test UI link, copy that and use that link to login and make sure you check your email, where you must have been received the password for login:

CloudFormation 
@ Stacks (1) 
Stacks > 
Distributed-load-testing-VI 
C 
Distributed-load-testing-vl 
Q Filter by stock name 
O View nested 
Active 
Distributed-load-testing-VI 
2021-11-20 13:44: lg 
@ CREATE.COMPLETE 
Stack info 
Outputs (3) 
o 
Q "'orc", outputs 
Console 
DLTApiéndpointDg8BogAC 
solutionUUlD 
Outputs 
Parameters 
Template 
Change sets 
dl v 17vsnzxe714.cIoudfront. net 
https://bjjd4cay61. execute-api _ us-east- _amazonaws.com/prod/ 
7 c04da33-7deuce7-gg80-34012b34b10c 
Stack act 
Description 
Console URL 
Solution UUID

 

dlv17vsnzxe714.cloudfront.net 
Sign in to your account 
username * 
Enter your username 
Password 
Enter your password 
Forgot your password? Reset password 
No account? Create account 
SIGN IN

 

Post successful login, it will redirect you to dashboard, where you will have option to create test and see the existing test result:

Distributed Load Testing 
Test Scenarios 
DASHBOARD 
O CREATE TEST 
CO SIGI 
REFRESH 
Next Run 
(UTC) 
Name 
Discovery Hub Home Page 
Test 
Id 
ult85FZUd3 
Description 
Discovery Hub Home Page 
Test 
Last Run (UTC) 
2021-11-20 
09l21l57 
Status 
COMPLETE 
Recurrence 
Details

 

I created test for MyPrimeAcademy home url to test with 2 containers(users) which will put 5 request each and each request hold for 10 second.

While you do create, you have option to use JMeter script as well, where it will ask you simply upload the script.

Also you can either run it just after create or you have option to schedule on time interval to run.

General Settings 
Name 
Discovery Hub Home Page Test 
The of test d—'t to be unique. 
Description 
SYM of the test 
Task Count 
of that will Fargate the 
1000 (1000 
Concurrency 
5 
The number of con" rent virtual Esk TYE limit 
is 200 virtual limited CPL' and Please implem*ntytim 
guide for instnmZns æn -upgort. 
Ramp up 
seconds 
Th to Wget 
Scenario 
Test Type 
Single HTTP Endpoint 
Single HTTP Endpoint 
JMeter 
https://vwm_myprimeacademycom 
URL to run tests against. http htt# - 
HTTP Method 
GET 
HTTP Headers (Optional) 
'SON to include in th 
Body Payload (Optional) 
m : 80 n 
Hold For 
10 
to 
seconds 
Run on Schedule

 

Once test is completed, you would be able to see the result from dashboard and navigate to your test detail:

Test Results 
SUMMARY 
O Info 
Avg Response Time 
5.92711s 
Total Count 
213 
Avg Latency 
1.76228s 
Success Count 
213 
Avg Connection Time 
0.03365s 
Error Count 
Avg aand'width 
562.48 Kbps 
Requests Per 
second 1.72 
Percentile Response 
CloudWatch Metrics 
Time 
IDO% 
999%: 
28_840s 
2880s 
28480s 
20016s 
11Q8s 
4.170s 
Seca3ndS 
0922 09:23 
Avg Response 
09:24 
05.25 
09:26 
0927 09:28 0929 09:30 
1671s

Categories/Tags: Distributed Load Testing~Load Testing

Recent Articles

1

AWS Saving Plan - Cost optimization tips

2
3

AWS RDS Key Concepts & Why you should use it?

4
5

Open-Search/Kibana - Multi Tenancy Setup

See All Articles