try using a separate go routine to push to redis instead of a single go routine reading from a channel