2009-10-12 61 views
2

我正試圖編寫一個簡單的內部文件傳輸應用程序來上傳文件,以便在客戶端輕鬆下載。我用一個非常基本的PHP腳本接收文件使用Flash。到目前爲止,這確實奏效。Flash/PHP文件上傳速度問題

問題說明是:使用FTP,一個100 MB的文件將在2-3分鐘內上傳。使用我的簡單Flash上​​傳器並上傳到相同的目的地,需要延長3-5倍。有什麼辦法可以調整我的PHP/Apache設置以提高上傳時間嗎?

FLA:http://shorttext.com/ku018nj56s

PHP:http://shorttext.com/5thixgjtr

+4

2-3分鐘100 MB?你有一個快速連接:) – Amarghosh 2009-10-13 05:09:00

+0

不知道它是否有所作爲,但你可能會錯過你的動作幾個參數... request.contentType =「multipart/form-data」; request.method = URLRequestMethod.POST; – 2009-10-13 08:36:03

+0

@Amaerghosh heelllll是的,我做的! Comcast Business Class ...糟糕的客戶服務,優秀的上/下速度。 – 2009-10-13 16:43:50

回答

2

我無法想象使用Flash上​​傳組件的大部分開銷。 就像Xeoncross已經推薦的那樣,您可以使用不同的方法來確保它與程序無關? SWFUpload的標準例子應該很容易設置。

然後,服務器上是否有任何後期處理髮生,這可能會延長請求?如果讓接收腳本馬上死掉,會發生什麼情況,時間差異仍然很大?

您如何(使用什麼主機名/ IP)尋址FTP服務器,以及瀏覽器如何解決解析上傳的腳本?

我不認爲你可以在PHP的一端做任何事情,因爲PHP腳本只在文件完全上傳時才起作用。唯一可能存在的問題是Web服務器配置錯誤 - Apache或任何您正在運行的服務器 - 但這是一個非常遙遠的可能性。

+0

不幸的是,當我設置賞金時,我並沒有想到。我目前正在休假,並沒有能夠測試任何東西,但我認爲這個答案給了我最深刻的見解。我將調查所有這些選項,並會在/如果找到解決方案時發佈。 – 2009-11-25 00:32:29

2

我會建議你嘗試喜歡漂亮的FancyUpload搭載MooTools的JavaScript框架預先內置閃光燈卸載。首先,它已經存在並且開源時間更長,所以它會被優化。其次,如果它仍然比FTP(它將是)要慢,那麼你就會知道事實是,FLASH + Apache + PHP的開銷無法超越直接FTP連接的速度。

還有很多其他上傳者 - 從獨立到jQuery

0

你可以使用XMLHTTPRequest並通過HTTP上傳嗎?