ruby-on-rails-3 - 如何正确使用后台作业进行文件上传 rails app heroku

标签 ruby-on-rails-3 heroku delayed-job background-process sidekiq

我正在开发一个 Rails 应用程序,它从用户那里获取上传的文件并将它们推送到框中。问题是这会在某些请求上超时,因为 api 调用花费的时间太长。我想将此进程移动到工作进程,但我不确定如何在用户上传文件和工作人员从队列中取出作业之间保留文件。我看到的所有示例似乎都跳过了这一部分,或者不处理使用非 s3 的 api。我考虑过将文件存储在数据库中,但是 box api 需要一个文件对象 (curl -F @file) 而不仅仅是文件的内容。关于如何实现这一点的任何指示?出于性能原因,我希望使用 sidekiq,但 delayed_job 也可以

最佳答案

我们的一个项目几个月前就遇到了类似的问题。 查看以下链接以供引用

http://mattgrande.wordpress.com/2009/08/11/delayedjob/

Paperclip, Delayed Job, S3, Heroku - design for delayed processing of sensitive uploaded files: db or s3?

还有一个 gem 用于延迟工作的回形针

https://github.com/jrgifford/delayed_paperclip/

关于ruby-on-rails-3 - 如何正确使用后台作业进行文件上传 rails app heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13055084/

相关文章:

ruby-on-rails - 无法在 Rails 控制台中访问 Mysql 模型

ruby - 从另一个符号数组填充一个新数组

ruby-on-rails - 在多个 Controller 中重构 "render format"

ruby-on-rails-4 - bonsai-elasticsearch-rails - 不能要求 'elasticsearch/rails/tasks/import'

ios - 推送通知不起作用/Heroku-mLab

ruby-on-rails - 对延迟作业工作人员重试的更高级控制

jquery轮询解决方案

ruby-on-rails - 在 Procfile 中启动多个 worker(开发环境 vs Heroku)

ruby-on-rails - 在 Rails 3 中强制 "humanized"字段名称为小写

ruby-on-rails - 如何在 Rails 4 中正确设置 database.yml 文件