So, after doing some research I decided to ditch the current method and use a redis connection pool.  That cleans up the quite quite a lot!