【发布时间】:2015-10-18 04:44:39
【问题描述】:
我有一个用作后端 API 和索引器的 rails 应用程序,它必须显示许多不同产品的最新信息。所以,这不是我的设计,我们可以从当前系统获取更新的唯一方法是在一天中随机接收许多 XML 文件,我需要将这些文件抓取并放入我的数据库中。
所以我的问题有两个方面,与我如何执行这样的工作有关。
首先,我查看了 Ruby 中的各种 cron 执行程序,发现只要 gem 是基本计划的 cron 任务的流行选择,但由于这不是计划的 cron 作业,我想知道如何提示这样一个事件以及我可以使用哪些工具来完成此任务。
其次,我想知道是否有可能在 Rails 应用程序中的目录更新时从我的第一个问题触发 cron 作业? IE。每当我在该目录中获得一个新的 XML 文件时,我都会执行我的脚本来抓取它并将其放入数据库中。
谢谢!
【问题讨论】:
-
您的延迟要求是多少(或者换句话说,新文件到达和处理之间的最长时间间隔是多少)?即使只有五分钟或更短的时间,我也会使用
whenever。触发文件到达听起来像是一种可能导致竞争条件的方法。
标签: ruby-on-rails ruby cron