An introduction to the Microsoft Azure Load Testing Service

An introduction to the Microsoft Azure Load Testing Service

Introduction

In this upcoming series, I will try to explain the Azure Load Testing Service. Why load testing is important, how to create your first load test in JMeter, and analyze the performance statistics after the first completed and successful load test.

What is the Microsoft Azure Load Testing Service?

Microsoft Azure Load Testing is a cloud-based service, which is currently in preview, that allows users to test the performance of their web applications and services under real-world load conditions. It provides a simple set of tools to simulate user load, measure performance, and identify bottlenecks. It also offers advanced analytics and reporting capabilities to help users identify and address performance issues.

Currently, there is a limitation of 11,250 concurrent virtual users which Azure Load Testing can simulate and the maximum duration is 3 hours.
The Azure Load Testing Service is currently (09/01/2023) available in the following regions:

  • Australia East

  • East Asia

  • East US

  • East US 2

  • North Europe

  • South Central US

  • Sweden Central

  • UK South

  • West Europe

  • West US 2

  • West US 3

But why should you load-test your applications?

Load testing is important for web applications because it helps to identify potential performance issues before they become a problem for users or in a production environment during the black week. It helps to ensure that the application and the infrastructure can handle the expected load and scales up when needed. Load testing can also help to identify any bottlenecks in the chain between the front- and back end (e.g. load balancing -> web application -> database) and can help to identify areas for improvement.

Azure Load Testing Real-World Example

Recently, I came across the need for a simple and quick load test where a legacy on-premises web application firewall needs to be migrated to multiple Azure Application Gateways. In this case, I needed to prove that an Azure Application Gateway, with its scaling, would provide the same performance as the legacy environment.
Therefore, I quickly and easily deployed the Azure Load Testing Service against the legacy product and the new Azure Application Gateway environment. In doing so, I was also able to directly observe how many instances the Azure Application Gateway would scale to with the desired load in the future.