title: redis reliable queue pattern
body: <p><a href="http://redis.io/commands/rpoplpush" rel="nofollow">http://redis.io/commands/rpoplpush</a></p>
  
  <p>"RPOPLPUSH (or BRPOPLPUSH for the blocking variant) offers a way to avoid this problem: the consumer fetches the message and at the same time pushes it into a processing list. It will use the LREM command in order to remove the message from the processing list once the message has been processed."</p>
  
  <p>This reliable queue pattern is recommended. The key here is removing item from queue unless process finishes. But my biggest confusion is why processing queue is needed here? The same goal could be achieved by keeping only one queue. </p>