Skip to the content

Scaling Azure to meet demand 

 

Back in May 2020 we wrote about the explosive growth our customer SimTutor experienced as a result of online learning demands driven by COVID-19.

The scale of activity the systems needed to cope with were unprecedented, and there were some great lessons learned along the way.

1. Work closely with your frontline support

I can't stress this enough, your frontline support team is gathering the most valuable information in your organisation.

For the team working on the SimTutor platform, we used this feedback to benchmark how well we were doing throughout this growth period. Not only did it help improve customer satisfaction, it also had a significant impact on reducing SimTutor infrastructure costs.

2. Monitor performance frequently

Scaling out isn't a silver bullet. Just because you've designed your systems to scale outwards across many machines, doesn't mean you should.

When we first started to experience heavy load, our infrastructure started to scale horizontally as designed. However, this meant the infrastructure costs started getting out of control pretty quickly. By monitoring daily performance using Azure Application Insights, we were able to pinpoint inefficient areas of the system, which helped us bring costs back under control.

By the time we finished, we had actually reduced some of the core parts of our infrastructure by simply examining the performance data gathered when the systems were under heavy load.

3. Use a CDN for everything

When we were at our peak we were processing hundreds of millions of transactions every month, and transferring terabytes of data to our customers every day.

Data egress charges start to make up a significant proportion of your Azure costs once you start to get to those numbers, so caching as much as you can on edge networks will result in massive cost savings. At Pattern we always recommend Cloudflare to our customers for this very reason.

By Jamil Geor
Jamil Geor

About the author

Jamil Geor

Jamil is the co-founder and CTO of Pattern. Jamil has been developing software for the past 20 years for organisations ranging from start-ups to some of the world's largest brands.