0

我的模型中有两个附件,原始的和修改的。

我的应用程序允许用户上传音频文件,后端应将其转换为修改后的格式。

使用回形针将原始文件上传到 s3。现在我需要在后台处理这个文件并将其上传到 s3 并更新数据库中修改后的附件。

从原始到附件的转换是通过一个简单的系统命令进行的,因此我可以从我的 ruby​​ 方法中调用它。我的问题是安排此类工作的最佳方式是什么?对于这种情况,delayed_job 是一个不错的选择吗?我只需编写一个方法来处理原始文件并保存它,然后延迟调用此方法吗?

4

2 回答 2

1

delayed_job是一种广泛使用的解决方案,适用于需要大量完成但不是立即完成的应用程序。我会推荐它,除非您的用户将立即需要修改后的文件。

备择方案:

  • 雷斯克
  • 西德基克
  • 海军
  • 队列经典

有关更多选项,请参阅:https ://www.ruby-toolbox.com/categories/Background_Jobs

于 2013-07-13T07:43:58.100 回答
0

Sidekiq 是做后台活动的好选择。

由于这将只是一次活动,因此理想情况下不需要 cron 作业。

完成上传原始视频的过程后,您可以在 Sidekiq 中添加带有基本参数的作业,这些参数将调用工人类并完成其余处理。

https://github.com/mperham/sidekiq/wiki

你也有很好的监控插件来监控你的工作处理

https://github.com/socialpandas/sidekiq_monitor

于 2013-07-13T08:05:16.130 回答