Rails如何为rake任务创建延迟作业



如何为应该每15分钟运行一次的rake任务创建延迟作业?

你可以试试:https://github.com/defunkt/resque

我正在使用Resque + Redis与Heroku。他们的云服务也非常支持延迟作业。

在lib/任务/cron.rb

desc "This task is called by the Heroku cron add-on"
task :cron => :environment do
  def resubmit_pending_jobs
    Resque.enqueue(SomeJob, job.id)
  end
end

我能想到的一种方法是使用Heroku提供的cron插件,它每小时(不是15分钟)做一次。也许上面的代码块可以帮助您找到延迟作业的类似实现。

如果你有兴趣用RedisToGo和Heroku安装Resque,请参考本指南。

希望有帮助!

看一下SimpleWorker。它是一个基于云的Ruby应用程序后台处理/工作队列。这是Heroku的附加组件。

您在代码中创建工作类,并将作业排队,以便立即运行或稍后运行——一次或在重复的计划中运行。

<>之前worker = SomeWorker.new设置worker在这里使用的属性工人。Schedule (:start_at => 1)。分钟,:run_every => 900)

相关内容

  • 没有找到相关文章

最新更新