Use Azure availability tests and load tests to analyze the decoupling needs of your system (handson).

Azure load testing can set load on your system from any location around the world.
clip_image002

Azure availability tests can monitor and analyze the responsiveness of your system anywhere in the world.
clip_image004

Interesting capabilities even more interesting when you combine them in an investigation of your system. When you put some load on one part of your system and monitor the availability of another part you can analyze if that load impacts the availability of the other part.

When the analytics are positive, there is an impact, it is a candidate for decoupling so the parts can scale independent. PaaS services, Containers or a CDN to the rescue.


The scenario

The sales of PartsUnlimited is expanded to Asia. Due to interest in Jumper Leads from this new location a lot of traffic is expected on the search part of the website.

The product owner from PartsUnlimited wants to know if the high usages of the search feature impacts the responsiveness in Europe.

The DevOps team wants to monitor the availability of the website from both regions and they want to investigate if the website stays responsive in Europe during the enormous load from Asia on the search screen.

clip_image002[6]

For the proof of this take the PartsUnlimited website.

You are now ready for the power of Cloud testing.

Setup Azure Availability Tests

Go to your PartsUnlimited Azure Web App and configure the availability tests to monitor availability from different regions.

clip_image006

clip_image004[6]

After several minutes, you will see the results in the availability graph.

Next to the simple availability test, it is also interesting to know the status of a specific scenario. For example, the login process or the checkout process. We want these scenarios always to be fast, high available so our returning and paying customers have a smooth experience.

Azure availability tests can validate these scenarios via a Visual Studio performance test a Multi-step web tests.

https://docs.microsoft.com/en-us/azure/application-insights/app-insights-monitor-web-app-availability

  • Record the scenario
  • set a validation rule
  • upload the VSTest file to Azure.

clip_image008

VSTS Cloud Load test.

With VSTS Load tests you can create load from any region in the world, for our scenario we put load from an Asia region.

clip_image010

  • Create performance tests with Visual Studio.
  • Add Load test to you Visual Studio solution.
  • Run the load test to play the Asia search load scenario...

During the execution of the load test you can open the streaming analytics in the Azure portal, to follow the load and possible errors.

clip_image012

Impact.

When you look at the previous create multi step availability test reports you will see that errors popup and maybe you also got some emails when notifications are configured.

clip_image014

The load on our search page impacted the responsiveness of our login and checkout scenario. Something you can solve by separating these scenario’s in separate services, de-couple them, split the data sources, introduce a CDN, a separate search database or know Asia is in a different time zone . Everything to make the components independent and can scale independently.

App Monitoring and Feedback Loops Microsoft DevOps Course.

This scenario is in detail explained in the Microsoft App Monitoring and Feedback Loops DevOps course I contributed to. It is free and you can download the script to replay this scenario (with more detailed steps and explanation) from the course page.

clip_image016

Keep on learning, feedback and monitoring is the DevOps trend of 2017.

Add comment


Şarkı Sozleri