idempotent redis cookbook without any dependencies