Azure Redis Cache is one of the cache service offerings from Microsoft Azure. Based on the popular open source Redis Cache, it allows the user to have the best of both worlds- rich features and eco system of Redis plus reliable hosting and monitoring from Microsoft.
Redis which is used by companies like Twitter, GitHub, Stack Overflow, Snapchat, Pinterest to name a few, is different from the traditional caches as it supports a variety of data structures like strings, hashes, lists, sets, bitmap to be used as keys. Not only that, atomic operations like appending a string, incrementing value in a hash, pushing element to a list, getting number with the highest rank in a sorted set can be performed on these data types. In addition features like transactions, pub/sub, Lua scripting, keys with a limited time-to-live makes it similar to traditional caches.
Presently, an Azure Redis Cache can be created from the new management portal. This service is available in two tiers:
Basic: This is mainly suitable for development/test purposes and non-critical workloads. It has a single node which is available in multiple sizes.
Standard: This provides replication through primary and secondary nodes. It supports multiple sizes and provides a SLA of 99.9% availability.
The maximum size of the Azure Redis cache is 53GB. The monthly pricing starts at $16 for Basic Tier and $41 for Standard tier. Both the customers using the Azure Managed Cache Service or In-Role Cache can easily migrate to Azure Redis Cache.
The benefits of using Azure Redis Cache are:
High Performance due to the low latency and high throughput capacity of Redis engine. So, as the load on the application increases, it continues to remain available. And since the cache layer is separate, the data tier can be scaled independently.
Supports a variety of programming languages like C, C#, Java, PHP, VCL, Fancy, Io, Lua, Perl, Rust, Go, Scala, Matlab, Python.
Leverages Redis authentication and supports SSL for securing cache/client communication.
Makes Redis cache highly available by having primary and secondary replica cache. If the primary cache fails, the secondary replica is promoted to primary and a new replica is created and populated. This process is automatic and is managed by Microsoft Azure.
Monitoring the health and performance of the cache, configuring alerts when a certain threshold is crossed is easy and can be done through the Azure Management Portal.
With so many features and support, it is one of the best caching services available in the market today. Though the cache size of 53 GB may look like a limitation, it is actually a good opportunity to split the cache units. For instance: the user data can go to one cache unit, product’s data can go to another unit and so on. By using the Azure Redis Cache, the user does not have to worry about installing and managing Redis cache – Microsoft Azure does that for you. So, all in all a yes and yes for Azure Redis Cache.
In my next post, I will talk about creating an Azure Redis Cache from the new management portal and using it. Post your questions and your experience with Azure Redis Cache as comments below. Till then, Happy Caching.