0

我需要每天执行一次代码。一天可以不止一次,错过一天并不是世界末日。该代码将确保用户根据某些标准获得一些奖励积分。我会跟踪他们是否已经收到了奖励积分,所以它不会翻倍..

一些简单的 cron 作业偶尔调用一个特定的控制器是完美的:

curl http://localhost/tasks/pulse

当然,真正的 crontab 条目效果很好。还是在 Rails 中有这种事情的内部机制?我正在使用最新的稳定 Rails(当前为 3.2.9)。

唯一的问题是这也需要在 Heroku 中工作。

我刚刚注意到Heroku 的 Scheduler。看起来很适合 Heroku。我可以在我的开发/测试环境中手动运行这些任务。这是在 Rails 中处理脉冲/cron 作业的最佳方式吗?有 rake 任务?易于在测试中合并运行 rake 任务?

4

2 回答 2

0

您可以查看这个 gem,只要它是一个 Ruby gem,它为编写和部署 cron 作业提供了清晰的语法。它维护得很好,我自己没有在 Heroku 上使用它,但值得一看。

你可以做很多事情,比如

every 3.hours do
  runner "MyModel.some_process"
  rake "my:rake:task"
  command "/usr/bin/my_great_command"
end
于 2012-11-23T23:51:29.763 回答
0

Heroku Scheduler工作得很好,而且很容易设置!

于 2012-11-27T17:37:47.197 回答