int RetryCount = 5; //超时次数 public ErrorWorkerProcess(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; _logger = _serviceProvider.GetService <ILogger <WorkerProcess> >(); _options = _serviceProvider.GetService <RedisMessageBusOptions>(); _redis = _serviceProvider.GetService <ConnectionMultiplexer>(); _database = _redis.GetDatabase(); _redisStorage = _serviceProvider.GetService <RedisStorage>(); ExecuteTimeoutMilliseconds = _options.ExecuteTimeoutSecond * 1000; }
public WorkerProcess(IServiceProvider serviceProvider, string topic, string groupName, string consumerName) { _serviceProvider = serviceProvider; _logger = _serviceProvider.GetService <ILogger <WorkerProcess> >(); _options = _serviceProvider.GetService <RedisMessageBusOptions>(); _redis = _serviceProvider.GetService <ConnectionMultiplexer>(); _database = _redis.GetDatabase(); _taskExecutor = _serviceProvider.GetService <MyMultithreadTaskExecutor>(); _topic = topic; _groupName = groupName; _consumerName = consumerName; _redisStorage = _serviceProvider.GetService <RedisStorage>(); BatchCount = _options.PerBatchPullCount > 0 ? _options.PerBatchPullCount : 100; }
public RedisStorage(IServiceProvider serviceProvider, ConnectionMultiplexer redis, RedisMessageBusOptions options) { _serviceProvider = serviceProvider; this._redis = redis; this._options = options; _database = redis.GetDatabase(); _queueJobChannelSubscription = new RedisSubscription(_serviceProvider, _redis.GetSubscriber(), Helper.GetQueueJobChannel(_options)); _errorJobChannelSubscription = new RedisSubscription(_serviceProvider, _redis.GetSubscriber(), Helper.GetErrorChannel(_options)); _crontabJobChannelSubscription = new RedisSubscription(_serviceProvider, _redis.GetSubscriber(), Helper.GetCrontabChannel(_options)); _delayJobChannelSubscription = new RedisSubscription(_serviceProvider, _redis.GetSubscriber(), Helper.GetDelayChannel(_options)); }