【发布时间】:2013-05-20 21:58:48
【问题描述】:
我有兴趣了解在 Rails 应用程序中处理大文件上传(2-5Gb 文件)的不同方法。
我了解,为了传输这种大小的文件,需要将其分解为更小的部分,我已经进行了一些研究,这就是我目前所掌握的。
- 需要服务器端配置来接受大型 POST 请求,并且可能需要 64 位机器来处理 anything over 4Gb。
- AWS 支持multipart upload.
- HTML5 FileSystemAPI 有一个持久上传器,可以分块上传文件。
- Bitorrent 的库,尽管这需要一个不理想的传输客户端
是否可以像 FTP 一样恢复所有这些方法,我不想使用 FTP 的原因是如果可能的话,我想保留在 Web 应用程序中?我使用了carrierwave和回形针,但我正在寻找能够恢复的东西,因为上传5Gb文件可能需要一些时间!
在我列出的这些方法中,我想了解哪些方法效果很好,是否还有其他方法我可能会遗漏?如果可能没有插件,宁愿不使用 Java Applets 或 Flash。另一个问题是这些解决方案在上传时将文件保存在内存中,这也是我希望尽可能避免的约束。
【问题讨论】:
标签: ruby-on-rails http bittorrent large-file-upload