Redis (name means Remote Dictionary Service) is free (open source), in-memory NoSQL database, which keeps data in key-value form. Data is stored in RAM, so that it gains high efficiency. Comparing to Memcached server Redis can ensure (optionally) durability of data by writing it to the hard disk.
Redis is not typical message broker, however, it may be a substitute (alternative solution) because of its properties .
Redis supports following data structures:
In addition, this NoSQL database has built-in replication mechanisms, support for Lua scripting, transactions, various types of data storage on the hard disk and provides high availability solutions via Redis Sentinel and automatic partitioning with Redis Cluster.
The creators of this NoSQL system distinguish three basic use cases:
The Redis server can also be used as a layer that stores user sessions instead of a database or a Memcached server.
As a real example of the possibility of replacing the RabbitMQ message broker by Redis, one can provide Sensu – an application to monitor the server operation status, in which as the so-called transport layer you can choose one of the mentioned systems.
Currently focused on microservice architecture, which allows to build scalable web applications.