-
Choose the right Azure region
This might sound pretty obvious, but people don’t always think of it – you need to choose the right region for your services.
One of the most fundamental yet often overlooked factors in minimising latency is selecting the appropriate Azure location.
There are lots of regions to choose from, and it’s always best to select one that is closest to your end users, your head office, or the particular staff who are going to use the application. Or perhaps your own customers are going to access the application.
Where are they located? Do you have multiple sites or user groups?
The closer your services are to the users, the lower the latency. This can dramatically improve the performance of your applications, especially for those heavily accessed or latency-sensitive. So it’s worth getting right.
-
Enable Accelerated Networking
This is another one that’s commonly overlooked. Accelerated Networking reduces the latency on all applications and systems that use the enhanced adapters in Azure.
It bypasses the virtual switch and connects directly to the Azure backbone, cutting down on the processing time required for network traffic.
If you’re experiencing higher latency or suboptimal throughput with your virtual machines, Accelerated Networking can be a game-changer, shaving off precious milliseconds and improving overall performance.
-
Optimise disk performance
Disk performance is another critical aspect that can influence the latency of your apps, and it’s something you can optimise by simply choosing better-equipped hardware.
With Azure you can select from a variety of disk SKUs, each having different performance abilities. You can get your applications performing optimally without bottlenecks if you pick the right one.
These days, all but the coldest of data storage is done on SSDs – solid state drives. Without any moving parts (as traditional hard disks have), they’re already quite speedy, and for most application servers, we’d advise opting for SSD or Premium SSD.
For applications that need ultra-low latency, you might consider using Premium SSD V2 or Ultra SSD, which offer NVMe-level performance. They’ll have super, super low response times.
There is usually a cost trade-off with these – the high performers are usually priced a bit higher – but in many cases it’s absolutely worth it.
(If you’d like a deeper dive into Azure storage options, check out our Azure masterclass).
-
Utilise availability zones
Here’s another location related one. Azure operates in multiple regions, which contain different Availability Zones. Each zone is a separate physical location within the Azure region, often comprising multiple data centres.
Placing your resources within the same Availability Zone helps minimise latency, as the traffic doesn’t need to traverse different zones.
So for instance, if your Progress DB server and Azure Virtual Desktop (AVD) environment are in different zones, you might experience slower application performance. This is because you’re adding the time it takes for traffic to traverse from one Availability Zone to another to reach your application server and retrieve data.
So keeping them in the same zone can speed things up nicely, especially for certain database systems which have higher latency-sensitivity than others.
-
Make use of Proximity Placement Groups
Now, because an Availability Zone can span multiple data centres, we use something called Proximity Placement Groups (PPGs). PPGs ensure that your resources are physically close to each other by placing them in the same data centre.
This is particularly useful when you have multiple virtual machines, availability sets, or other resources that need to communicate frequently. When you reduce the physical distance between your resources like this, you get better throughput and latency. Shorter distances = faster speeds. Simple!
-
Implement ExpressRoute
Finally, we’ve got a less commonly-known option for reducing lag times.
ExpressRoute is an advanced networking option that provides a private connection between your on-premises networks and Azure.
From a customer’s environment – where they might have, say, a network or an MPLS – getting an ExpressRoute to take that traffic directly into Azure can save several milliseconds.
In our experience, we typically see a reduction of around 10 milliseconds in terms of round-trip time – that’s no small amount. For applications where every millisecond is crucial, this can make a significant difference.