Redis Sidetiq在Rails 5.0升级后不工作
我正在将rails应用程序从rails 4.2/ruby 2.2迁移到rails 5/ruby 2.4。我遇到的大多数“问题”都很容易解决,但这一点让我有些困惑 我通过Redis/Sidekiq/Sidetiq向员工发送了许多重复性作业。它过去工作得非常好。现在,当我启动Sidekiq时,我的重复工作任务似乎没有“加载”,所以基本上它们没有排队或执行。在我启动Sidekiq后,这种情况通常会自动发生,但现在我可能需要先显式地实例化这些工人类?如果我手动执行并延迟(例如,在1秒内执行_)一个周期性工作类一次,那么这个类将按照它应该执行的周期性计划开始执行。在手动执行此“在1秒内执行”作业后,我确实会在Sidekiq中显示错误,但我不觉得这是问题所在: /.rvm/gems/ruby-2.4。0@rails5.0/gems/ice\u cube-0.14.0/lib/ice\u cube/validations/minute\u of\u hour.rb:7:警告:constant::Fixnum不推荐使用 /.rvm/gems/ruby-2.4。0@rails5.0/gems/ice\u cube-0.14.0/lib/ice\u cube/validations/hour\u of\u day.rb:8:警告:constant::Fixnum不推荐使用 /.rvm/gems/ruby-2.4。0@rails5.0/gems/ice_cube-0.14.0/lib/ice_cube/validations/day.rb:9:warning:constant::Fixnum不推荐使用 下面是我的定期工作班的样子:Redis Sidetiq在Rails 5.0升级后不工作,redis,rubygems,ruby-on-rails-5,sidekiq,sidetiq,Redis,Rubygems,Ruby On Rails 5,Sidekiq,Sidetiq,我正在将rails应用程序从rails 4.2/ruby 2.2迁移到rails 5/ruby 2.4。我遇到的大多数“问题”都很容易解决,但这一点让我有些困惑 我通过Redis/Sidekiq/Sidetiq向员工发送了许多重复性作业。它过去工作得非常好。现在,当我启动Sidekiq时,我的重复工作任务似乎没有“加载”,所以基本上它们没有排队或执行。在我启动Sidekiq后,这种情况通常会自动发生,但现在我可能需要先显式地实例化这些工人类?如果我手动执行并延迟(例如,在1秒内执行_)一个周期性
class RecurringWorker
include Sidekiq::Worker
include Sidetiq::Schedulable
recurrence do
weekly.minute_of_hour(0, 15, 30, 45).hour_of_day(10, 11, 12, 13, 14, 15, 16, 17).day(1, 2, 3, 4, 5)
end
def perform
# Some Code
end
end
我的初始值设定项:
Sidetiq.configure do |config|
# Clock resolution in seconds (default: 1).
config.resolution = 1
# Clock locking key expiration in ms (default: 1000).
config.lock_expire = 100
# When `true` uses UTC instead of local times (default: false).
config.utc = false
# Scheduling handler pool size (default: number of CPUs as
# determined by Celluloid).
config.handler_pool_size = 5
# History stored for each worker (default: 50).
config.worker_history = 50
end
所有的gem依赖项似乎都是与最新版本一起安装的 Sidekiq 5测试版已经推出,应该可以很好地与Rails 5配合使用