Redis comes packed with a simple yet powerful PubSub API. It provides low latency and scales well. A message published on a channel is received by subscriber(s) at the other end. However, if no active subscriber is found the message is simply lost. This drawback puts Redis out of the probables list for several use cases where message persistence of unprocessed published messages is desired. It’s also probably a reason why several open source projects that support Redis as a broker are based upon it’s list push / pop API. In this post I will demonstrate how to modify Redis PubSub API to support message persistence, opening possibilities for several interesting use cases.