大文件上传会阻止应用程序请求/响应周期吗?我有一个应用程序,允许用户上传多个大文件(特别是图像)。这些文件存储在远程主机上。我无法使用异步后台作业上传这些图像,因为上传完成后,用户必须立即可以访问这些图像。我应该如何处理如此大的上传?它会影响并发吗?这是我第一次大规模上传。当然,除了巨额账单外,我还应该警惕什么?任何使用大文件上传创建应用程序的开发人员的任何输入都将非常感激。
答案 0 :(得分:2)
为什么不能使用异步上传,只处理表明已完成的事件?这通常是异步操作的工作方式 - 你将它们踢掉,然后将指针存储在某处,然后处理“完成”事件,或者只是周期性地迭代你已经开始上传的指针并检查每一个以查看它是否完整
答案 1 :(得分:1)
这是一个老问题,但我仍然担心大文件上传的同样问题,认为在文件上传时进程被阻止但事实证明,如果我做对了,那么nginx和其他服务器也可以在发送文件时缓冲文件内容,这样就不会阻止任何rails进程被阻塞,只有当上传完成并且rails正在处理它时,比如调整图像或其他内容。