Heroku安排一次性工作

时间:2012-03-06 17:26:16

标签: ruby heroku

我想安排工作在特定的时间和日期进行,但我对这样做的各种选择感到困惑。

我的要求:

  • 这些不是经常性的工作,只需要在指定的日期和时间进行一次
  • 我是该应用的唯一用户,所以不需要处理繁忙的流量
  • 我想最大限度地减少在Heroku上运行此操作的成本,即不支付空闲动态鼠标

有关使用哪种宝石等组合的提示?

2 个答案:

答案 0 :(得分:1)

您是否考虑过使用https://github.com/bvandenbos/resque-scheduler?你需要Heroku上的Redis To Go插件。这将花费您每月36美元,因为您需要一个与您的Web流程一起运行的调度程序进程。但是,我已经免费完成了这项工作。请参阅此处的自述文件:https://github.com/austinthecoder/pinger

祝你好运!

答案 1 :(得分:1)

由于Heroku Scheduler(默认的Heroku附加组件)不允许您将作业安排为特定时间。最好依靠时钟进程来完成这项工作。宝石这样有发条可以设置,请参阅Heroku的Clockwork guide。您需要将Clock与背景队列结合使用,例如resquesidekiq。我强烈建议你去sidekiq。请记住resque和sidekiq都需要由redis加载项提​​供的redistogo,并且运行它会花费你的钱。