one stop for my redis use case