Redis is often used as a cache, although it offers a lot more than just in-memory caching (it supports persistence, for instance).
What are the reasons why one would choose to use Redis rather than the .NET MemoryCache
? Persistence and data types (other than key-value pairs) come to mind, but I'm sure there must be other reasons for using an extra architectural layer (i.e. Redis).