在Rails3 / Heroku Cedar部署中重复运行后台脚本

时间:2012-05-30 14:48:44

标签: ruby-on-rails-3 heroku

我正在开发一个Rails3应用程序,该应用程序将在Heroku Cedar堆栈上运行,需要不断检查特定主题标签下的新推文。我有逻辑做到这一点,但我想在后台运行此任务,以免干扰主应用程序性能。我还需要编写任何发现到数据库的新推文,因此我需要访问Active Record。我正在寻找可能是实现这一目标的最佳方法的建议。

2 个答案:

答案 0 :(得分:1)

我做了类似的事情,如果推文稍微过时,对我来说无关紧要 - 我们使用调度程序执行rake任务的10分钟执行,该任务正在查看主题标签。如果我们觉得10分钟太频繁,我们可以将执行频率改为每小时/每天。

答案 1 :(得分:1)

您可以使用Heroku scheduler定期执行Rake任务(或其他一些脚本)。

或者,如果您正在检查推文以响应某个用户操作或其他某些事件,则可以使用Delayed Job之类的任务队列。