我想知道上傳中等大文件的普遍共識是什麼。我有一個網絡應用程序,並且每當用戶上傳一個文件(通常大於5mb)時,Web服務器往往會掛起,直到文件上傳完成。上傳的解剖結構
上面看起來很正常,因爲單個上傳可以佔用一個HTTP請求處理程序。做web開發者考慮到這一點,並且:
一)對多個HTTP處理程序
b)利用一些其他的方法,通過使用AJAX或其他方式
聽說已經克服這種支付Web應用程序有幾個HTTP請求處理程序來處理這個問題是非常正常的,這會花費更多的代價。另一方面,如果成本問題,則有人建議直接通過Flash + AJAX直接上傳到Web服務器或存儲服務(如Amazon S3)。後一種方法需要一些腳本,並且有點麻煩。
我的第二個問題:
通過使用Ajax文件上傳到服務器。這仍然佔用一個完整的HTTP請求處理程序嗎?即服務器是否掛起直到上傳完成?
即使使用閃光燈,我仍然需要指定要上傳的網址。該網址將是我的控制器上的一個操作。這意味着處理仍然發生在服務器端。這到目前爲止是否正確?
我在想。另一方面,如果我使用其中一個上傳腳本(plupload,uploadify,swfupload等)直接上傳到Amazon S3,則在S3服務器上而不是本地Web服務器上處理該處理。根本不會掛上網絡應用程序。我是否正確理解這一點?
想聽聽您的意見。
嗯,我正在使用Heroku,這是一個託管的Ruby on Rails的Web主機。我問他們是否支持這些非阻塞的服務器之一。如果他們不這樣做,那我還有什麼其他選擇? – 2011-02-24 12:16:42