Redis is one amazing Open Source software that can serve various needs in a Web Application.
What is Redis?
We can store values and associate them to a key, and later retrieve them.
One of its special features is high performance. High performance is provided by one of its main characteristics: it’s an in-memory database. Data is kept, stored and accessed in memory instead of being written to a database.
Most databases keep data stored on disk and they optimize by keeping a cached set in memory.
Redis does the opposite: it keeps the data in memory.
By default Redis saves snapshots of the stored data set to disk, and you can configure the details of how this happens and where the data is stored.
Redis is one of my favorite tools because of its flexibility. You have lots of freedom in how you store and manage data storage, and it can be used in many different ways depending on your needs.
This is also because it’s a NoSQL database, meaning it’s very flexible compared to PostgreSQL or other SQL and schema-based databases.
It’s often used as a cache storage mechanism, but also as a message broker, a way to communicate between different processes and applications.