I think nothing explains better the use cases for Redis than this article:
http://oldblog.antirez.com/post/take-advantage-of-redis-adding-it-to-your-stack.html
I bet you'll have an aha! moment. ;)
A quote from a previous reader:
I've read about Redis before and heard how companies are using it, but never completely understood it's purpose. After reading this I can actually say I understand Redis now and how it's useful. Amazing that after hearing so much about it all it took was a relatively simple article.
A quote from the article:
Redis is different than other database solutions in many ways: it uses memory as main storage support and disk only for persistence, the data model is pretty unique, it is single threaded and so forth. I think that another big difference is that in order to take advantage of Redis in your production environment you don't need to switch to Redis. You can just use it in order to do new things that were not possible before, or in order to fix old problems.
Use cases the article touches on:
- Slow latest items listings in your home page
- Leaderboards and related problems
- Order by user votes and time
- Implement expires on items
- Counting stuff
- Unique N items in a given amount of time
- Real time analysis of what is happening, for stats, anti spam, or whatever
- Pub/Sub
- Queues
- Caching