0

我需要某种回调,以便在创建方法后 5 分钟内调用函数。

我的情况:

用户登录我的网页,上传一些文件(调用创建方法),在 5 分钟内是否应该对文件进行分析(在 5 分钟内它应该调用该方法,该方法只占用整个文件夹,文件存储在哪里并对其进行分析)。这就是为什么像在命令行中键入rake jobs:work或使用gem daemons和键入这样的事情"RAILS_ENV=production script/delayed_job start"不适合我的原因。

我想像往常一样使用 rails s 开始我的应用程序,登录,上传文件,它应该自动工作以分析文件。
据我了解,一旦工作开始,它们会继续运行吗?我不需要这个。我只需要在创建方法后 5 分钟内运行一些方法。排队工作和启动工人的
所有这些事情似乎太复杂了,无法完成如此简单的任务。gem 'delayed_job_active_record'daemons

那么,是否可以使用gem 'delayed_job_active_record'gem daemons使用 rails 启动我的应用程序,并且一切都将在后台自动完成,而无需我停止应用程序并在命令行中输入内容来运行延迟的作业?或者是否有可能没有所有这些复杂的东西?

我已经在这里这里询问过延迟工作。

提前谢谢了。

4

1 回答 1

-1

这是一篇文章,其中描述了如何使用延迟作业设置调度
更新 2015-07-06:链接已损坏,我找不到缓存版本 - 请参阅下面的更新

如果可以的话,我建议研究sidekiq,它是一个很棒的消息队列,甚至内置了调度。虽然它确实使用了 redis,所以除非你已经部署了 redis,否则它会做一点点工作。

更新
这里是一个简单的解决方案的要点,用于延迟作业的计划和重复作业

于 2013-03-17T10:04:31.373 回答