我想优化文件上传到服务器 - 最好的方法是什么?

时间:2010-10-13 23:56:16

标签: ruby-on-rails apache process cloud parallel-processing

我有一个rails应用程序执行以下操作(当前是线性的):

(1)用户通过HTTP和标准上传表单在标准HTML页面上传文件 (2)将文件上传到apache服务器(与托管应用程序的服务器相同) (3)服务器将文件上传到远程存储服务(调用此存储1) (4)当(3)完成时,用户被自动带到其他页面

在上传文件时,用户会看到进度条等。

现在提问: - (1) - > (4)对于大文件需要相当长的时间(因为进程(2)和(3)需要一段时间)并且浏览器在移动到(4)之前等待服务器响应(即来自服务器的响应指示完成( 3)已完成)。

有没有加速的方法(1) - > (4)。我不介意在允许用户浏览网站上的其他页面的情况下,文件是否加载到存储1和后台服务器上。

现在另外考虑的是 - 文件上传到的服务器(让我们称之为服务器1)可以在必要时与托管服务器(服务器2)不同。

任何想法都赞赏。

1 个答案:

答案 0 :(得分:1)

文件上传到服务器后,立即将其移动。让服务器本身使用诸如延迟作业之类的东西来处理将文件移动到“存储1”,然后通知用户(使用诸如电子邮件的系统)该文件现在可以被下载。