Redis is a newer project than Memcached with the initial version released in 2009. Since then, Redis has replaced the usage of Memcached in many cases. Just like Memcached, it is a distributed, general-purpose, in-memory key-value store.
Unlike Memcached, Redis also features optional data durability. While Memcached operates on keys and values being simple strings, Redis also supports other data types, such as the following:
- Lists of strings
- Sets of strings
- Sorted sets of strings
- Hash tables where keys and values are strings
- Geospatial data (since Redis 3.2)
- HyperLogLogs
The design of Redis makes it a great choice for caching session data, caching web pages, and implementing leaderboards. Apart from that, it may also be used for message queueing. The popular distributed task queue library for Python, Celery, uses Redis as one of the possible brokers, along with RabbitMQ and Apache SQS.
Microsoft, Amazon, Google, and Alibaba all offer Redis-based managed services as part of their...