延迟作业未按时安排

时间:2014-10-23 18:17:37

标签: ruby-on-rails rails-activerecord delayed-job

我的模型中有以下延迟作业设置,如下所示:

def expire_listing(listing_id)
    puts "EXPIRING"
end
handle_asynchronously :expire_listing, :run_at => Proc.new { 1.minutes.from_now }

但是当延迟的工作安排如下:

 #<Delayed::Backend::ActiveRecord::Job id: 5, priority: 0, attempts: 0, handler: 
"--- !ruby/object:Delayed::PerformableMethod\nobject...", last_error: nil, 
run_at: "2014-10-23 18:13:00", locked_at: nil, failed_at: nil, locked_by: nil, 
queue: nil, created_at: "2014-10-23 18:12:00", 
updated_at: "2014-10-23 18:12:00">

您可以注意到当前时间 2014-的提前4小时( 2014-10-23 18:13:00 )的 run_at 时间10-23 14:12:00

我如何解决这个问题,使它实际上从当前时间开始运行1分钟?

2 个答案:

答案 0 :(得分:0)

我实际上忘记了这些工作。只需运行以下命令就可以了(Rails 4)。

bin/delayed_job start

答案 1 :(得分:-1)

尝试使用这个宝石,它真的很有用https://github.com/KensoDev/perform_later