【发布时间】:2017-08-02 02:19:34
【问题描述】:
在使用带有 sidekiq 的 ActiveJob 时,
# application.rb
config.active_job.queue_adapter = :sidekiq
我使用 redis 做了一份工作。
class SubmissionJob < ActiveJob::Base
queue_as :default
def perform(*args)
在检查日志时,调用job as之后
SubmissionJob_perform_later args
但是在做rails s时给消息后这不起作用
Enqueued SubmissionJob (Job ID: 63320b9d-de2a-4791-99f6-e58f2adf73d7) to Sidekiq(development_default) with arguments: ["12345", "12346"]
当最后,我从redis渲染了用job_id调用的结果,结果应该是返回参数,但它只返回空数组,而且似乎SubmissionJob从未运行过。
但是,当我使用 perform_now 、 SubmissionJob.perform_now args 调用时,该函数可以正常工作,因此 SubmissionJob 方法本身似乎不是问题。
我应该从哪里开始发现问题以及解决此问题的可能解决方案是什么。
【问题讨论】:
-
快速提问——您是否通过运行
bundle exec sidekiq启动了sidekiq 服务器? -
我确实做到了@31piy
标签: ruby-on-rails ruby sidekiq