use redis as the distributed message queue