We used Visual Studio Online to perform our load tests. The specifics of each load test differed depending on the particular anti-pattern that we were analyzing.
In most cases we used a step load pattern because we are interested in understanding how these particular anti-patterns affect characteristics such as elasticity, throughput, and latency.
We are not publishing the load tests themselves because they are tied to the specific deployments that we used. However, the load tests should be easy to reconstruct based on the general information included here and with each the details documented with each anti-pattern.
The current set of anti-patterns utilizes the following Azure services:
In order to deploy the code for any given project you will need to provision the corresponding resources. For details, see the ReadMe files provided with each project.
Unless specified otherwise, for each deployment we used:
You can deploy and test against different tiers, but your results might be significantly different from those described in the anti-patterns documents.
The Max Pool Size
in our connection strings was set to an arbitrarily high
value (4000) to prevent the connection pool from being a constraining
resource. However, this is not a default best practice.
Samples that are deployed as Cloud Services include an AzureCloudService
project. The VM size of the deployment varied with
each anti-pattern.
If no AzureCloudService
project is present in the sample, it is intended to
be deployed as a Web App.