public static void Start()
        {
            var muxer         = ConnectionMultiplexer.Connect(EnvironmentReader.FromEnvironment().RedisConnectionString);
            var timerProvider = new RealTimerProvider();
            var worker        = new BackgroundWorker(muxer, timerProvider,
                                                     new JobQueueFactory(muxer.GetDatabase(Constants.Redis.PACKAGES_DB))
                                                     .ForQueueName(Constants.Redis.PackageCrawlerJobQueueName));

            worker.Run();
        }
 public BackgroundWorker(ConnectionMultiplexer muxer, RealTimerProvider timerProvider, IJobQueue jobQueue)
 {
     this.muxer         = muxer;
     this.timerProvider = timerProvider;
     this.jobQueue      = jobQueue;
 }