我的Gemfile.lock有以下配置:
sidekiq (6.0.3)
connection_pool (>= 2.2.2)
rack (>= 2.0.0)
rack-protection (>= 2.0.0)
redis (>= 4.1.0)和我的工作看起来如下:
class ApplicationExportJob < ActiveJob::Base
include Sidekiq::Worker
sidekiq_options retry: 1, queue: 'high_priority'
def perform(*args)
my_service.initialize
my_service.build_csv
end
enddocs声明,在最新版本的sidekiq中,可以跳过工作人员包含步骤,并可以直接使用sidekiq选项。但我遇到了"Sidekiq::Worker不能包含在ActiveJob中“的错误,这是旧版本的已知情况。我该怎么做呢?
发布于 2021-01-21 20:34:20
为了清楚起见,当您配置队列适配器时,您可以在您的环境(生产)中这样做:
config.active_job.queue_adapter = :sidekiq
这将告诉ActiveJob使用sidekiq作为其作业运行程序( Rails中的默认运行程序不适合生产)。
随着ActiveJob的引入,您不再需要显式地包含帮助程序。
发布于 2022-06-30 15:11:31
查看application_job.rb的类名定义--写class ApplicationJob而不是class ApplicationJob < ActiveJob::Base
https://stackoverflow.com/questions/59114063
复制相似问题