Unleash the Power of Azure Cache for Redis: How to Boost Performance by up to 4X!
Published Apr 20 2023 08:03 PM 5,715 Views
Microsoft

Overview 

Azure Cache for Redis has become an increasingly popular in-memory caching solution for many organizations and developers. However, the growing popularity of Redis means there is a corresponding growing need for even higher throughput and scale. Azure now offers the Enterprise and Enterprise Flash tiers of Azure Cache for Redis. These tiers are built on Redis Enterprise, rather than open-source Redis, which offers increased performance through a transparent multi-shard design that takes advantage of multiple vCPUs 

We put the Enterprise tier of Azure Cache for Redis to the test to see what kind of performance boost this offering provides. We used Redis-benchmark, one of the most popular Redis benchmarking tools, to do some simple benchmarking of GET commands. While the performance of a Redis instance can vary greatly based on a multitude of factors such as the number of clients, data value size, pipelining, and latency/throughput tradeoffs, we were blown away by the performance benefits we saw from using Azure Cache for Redis Enterprise. Read on to see how using the Enterprise tier can help improve the performance of Azure Cache for Redis by up to 4X!   

 

Redis-benchmark 

Redis-Benchmark is a tool that allows you to measure the performance of a Redis server by simulating different workloads and measuring the server's response time, throughput, and other metrics. The benchmark tool is included in the Redis distribution and can be run from the command line. For instructions on how to use Redis-benchmark and best practices, check out our docs page. We used a redis-benchmark configuration optimized for throughput, including pipelining and multiple client connections. It is possible to increase the benchmarking throughput even further by adding additional client connections, a higher total number of requests, and setting the ‘--thread’ parameter to a higher number (e.g. 32) than the default of 2. Maxing out benchmarking results is only somewhat useful, however, because it may not reflect real-world performance.  

 

Benchmarking Results 

The following graphs show the maximum throughput values that were observed while testing various sizes of Premium and Enterprise tier caches. We used Redis-benchmark from an IaaS Azure VM against the Azure Cache for Redis endpoint and display throughput numbers for GET commands.  

 

rickydiep_0-1682020691496.png

 

 

rickydiep_1-1682020691498.png

 

Takeaways 

As the data shows, we saw significant performance benefits in our test from using the Enterprise offering! There are significant variations to point out, of course. Performance varies greatly based on whether TLS/SSL is enabled, with plaintext communication having much higher throughput. There was also a big difference between the Enterprise and OSS cluster modes for Enterprise-tier caches. The OSS cluster mode is more throughput-optimized because clients can connect directly to each shard. See our performance benchmarking documentation page to dive into the data and give it a try yourself!  

 

CHECK OUT THE FULL PERFORMANCE DOCUMENTATION

 

Getting Started with Azure Cache for Redis 

For more additional information on Azure Cache for Redis, the features listed above, and Redis, please see the resources linked below.   

 

Co-Authors
Version history
Last update:
‎Apr 20 2023 01:03 PM
Updated by: