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 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.
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.
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!