在Rails中调度和获取数据

时间:2013-06-04 12:55:27

标签: ruby-on-rails ruby-on-rails-4

我正在开发一个从X远程API获取数据的应用程序。 目前我每2分钟运行一次cron作业,为每个API执行rake任务,但我觉得即使这是一个简单的解决方案,它对我来说也不是最好的解决方案。

如果rake任务在下一个任务执行之前没有完成,会发生什么? 我现在如何正确运行任务? 像这样的问题是我想从cron切换的原因。

你们有什么想法或最佳实践吗?

2 个答案:

答案 0 :(得分:1)

在你的cron作业上添加lockrun。 Lockrun检查cron是否正在运行。如果运行则它不会启动另一个相同的cron作业。

答案 1 :(得分:0)

看看delayed_job宝石。我个人没有使用它,但听说这是一个很好的解决方案。