implemented redis queue