Problem: Create an application to check the availability of a large number of URLs. This list is constantly changing and every url must be checked at a specific interval (e.g., every minute). The actual checking of the URL needs to be distributable over several servers.
Redis had two key features that made writing this code very straightforward:
RPOPLPUSH: Pop the element on the right side of the list, return it, push onto left side of the list. This simulates a circular list.
BLPOP: Block until a new element is available at the list.
Lately I’m reading more and more examples of using Redis as a queuing and pub/sub tool than as an in-memory key-value store.
Original title and link: Using Redis to Control Recurring Sets of Tasks (NoSQL databases © myNoSQL)