Blogs

Cloud scalability: Azure’s new cost-saving features explained

Cloud scalability: Azure’s new cost-saving features explained

Cogworks

16 Aug 2023 • 4 min read

We recently attended an Azure Meetup where we chatted about an interesting autoscaling feature that could help to cost-effectively manage fluctuations in user demands.

Innerworks is coming soon...

This blog was originally published on our previous Cogworks blog page. The Cogworks Blog is in the process of evolving into Innerworks, our new community-driven tech blog. With Innerworks, we aim to provide a space for collaboration, knowledge-sharing, and connection within the wider tech community. Watch this space for Innerworks updates, but don't worry - you'll still be able to access content from the original Cogworks Blog if you want. 

Expecting a spot of traffic? Great!

Client and agency teams will both agree that the only “downtime” we want to experience is a relaxing vacation in the Bahamas.

Though it’s not a holiday, excellent cloud management can help you worry less about outages or error 404 pages! When cloud scalability is done right, your application can keep calm under pressure and quieter times.

Inspired by a recent Azure Meet up, we want to chat about how cloud-scaling works and how it can help your project.

Cloud scalability in a nutshell.

Cloud scalability is the cloud computing system's ability to adapt its resources to handle the workload efficiently. When the demand is high, the cloud server automatically scales out to more instances. In quiet times, it scales down to save costs. 

Here are a few keywords to remember about cloud scalability:

 

Scaling up and out.

Scaling up: Scaling up increases resources on a single server to handle more significant workloads efficiently.

Scaling out: Scaling out adds more web app instances to distribute the workload, enabling handling larger workloads and improved performance.

Cloud-scaling methods.

Manual scaling - Manual scaling may be more appropriate if you have a limited budget, a handful of content editors, predictable traffic patterns, and peak times. 

Autoscaling - Autoscaling provides excellent flexibility to scale up and out using rule-based settings, which is just one of the reasons we use autoscaling with Azure on almost all of our client projects.

Both are effective methods to manage your cloud infrastructure. Autoscaling, as the name suggests, is much more convenient than having eyes on resources 24/7, so it’s the ideal solution for permanent peace of mind.

New autoscaling options from Microsoft Azure could be a game-changer.

Almost all of our projects are hosted on Microsoft Azure, our chosen cloud-based provider that handles scaling everything front and back-end related. That’s the database, Azure search, global production, legacy folders, staging, UAT; you name it!

We use rule-based autoscaling on 95% of projects which can detect how the website is responding. For example, if the website goes over 70 CPU (Central Processing Unit, AKA the computer's brain), a new instance is added, redirecting traffic to the new version and reducing the load.

This method works well for our clients with ever-changing traffic demands, quickly allowing us to scale up and out, but Azure has made it even better.

Autoscaling metric by traffic.

Until this feature dropped, Azure let you manage your resources by adjusting your autoscaling settings to respond to a maximum CPU, memory usage or request count. While CPU is a great metric to keep an eye on for things like scientific computing, or applications that use machine learning or big data and analytics, it’s not always the best measure for a reasonably straightforward website or application.

In other words, not all websites require a brain (a CPU) the size of Europe; sometimes, they only need a slick design, a smooth UI, complete with integrations and a frontend that works! 

With autoscaling by CPU (computer brain-power), the more users enter the site; the more resources are created to handle the users. Sounds perfect. So why would we need to introduce autoscaling by traffic?  

Load balancing. 

A load balancer sits between the user's actions and new resources being created to handle the users. Think of the load balancer as a helpful leader of computer resourcing, evenly spreading the workload among the new resources and ensuring everything is fair! 

Image explaining how the user,load balancer and new instances of a website works when autoscaling is enabled!

In theory, the load balancer does what it says on the tin, but even the most intelligent computer has to think for a fraction of a second.

The load balancer’s thinking time can mean that, for a moment, one resource is working extra hard until the load balancer decides those duties should be distributed, and voila, we get a momentary blip in the user experience.

This is where the autoscaling by traffic comes in, as it guarantees a sudden influx of 100,000 users isn’t going to crash the whole thing. Perfect for those industries expecting global media attention following a targeted campaign. 

Always ready instances.

So we’ve established that even the most intelligent computers need time to react; that’s where always-ready instances could be the answer! Azure has introduced a way to keep one instanced fired up and waiting in the wings! This is an excellent way to counteract that fleeting moment between when the scaling condition is met and the scaling action takes effect. While you might blink and miss this moment, it can still cause a minor flicker in the application that some businesses can’t afford. 

Screenshot from the Azure functions webpage that shows you the field where you can edit the 'always ready instances' option!

Source: Azure Functions Premium plan


Splendid cloud management possibilities?

We’re excited to uncover if these new advancements from Azure are the cost-saving and user-experience features we’ve been waiting for. Regardless of budget, whether you use manual, autoscaling by CPU or traffic, everyone needs a cloud-scaling support system to handle the demands they need for their online business to work.


Contact us to discover how to get the most for your users and your budget using Azure.