2016-04-04 40 views
0

我的应用程序(Rails中)应提供两项主要任务:延迟工作与克龙Rails中

  • 创建活动(例如张贴到Twitter)在给定的时间在未来
  • 定期检索器的几个网站或下载推文

我在考虑使用DelayedJob gem或每当gem for cron任务。在这些情况下哪个更好?

感谢您的任何建议。

回答

1

在未来

建立在给定时间内的活动(例如张贴到Twitter)如果这是在响应事件/用户动作,那么后台任务将是理想的,因为它不是定期的时间表。 Ruby toolbox似乎有利于Resque和Sidekiq尽管延期工作,所以看看那些安顿之前。

定期检索器的几个站点或下载鸣叫

匡威以上,如果这是一个定期的事件,然后cron作业的理想选择。为此,使用whenever没什么问题,但要确保对作业有某种形式的监控,以便在出现问题时提醒您。

+0

好的,谢谢。我应该可以在我的PosgreSQL数据库中使用Redis和Sidekiq,不是吗? – kmaci

1

为了创建活动,我肯定会使用后台作业来完成这项工作(即PostToTwitterJob)。我倾向于Sidekiq而不是DelayedJob,因为delayed_job似乎不再活跃。如果您希望将来在特定时间执行该作业,请查看sidekiq's documentation

至于抓取,我会同时使用。您的抓取工具是后台工作(即TweetsCrawlerJob),您可以每小时使用whenever启动它。