我已經實現了JavaScript代碼來將文件以多個塊的形式上傳到谷歌雲存儲。如何提高文件上傳速度到谷歌存儲?
下面是流量,我執行上載的文件: 1.用戶選擇文件使用JavaScript客戶端web應用{請求是來自亞洲地區} 2. JavaScript的客戶端應用程序請求到我們的應用程序服務器中的NodeJS {實現上傳託管在谷雲的計算引擎 - 美國地區}允許上傳文件{authorization} 2. Nodejs應用服務器向客戶端應用程序返回signedurl 3.客戶端應用程序開始使用該簽名的url以多個塊向谷歌存儲上傳文件 4.上傳成功的客戶端報告到應用服務器
我能夠上傳多個塊的文件,bu t我觀察到,如果我在google雲美國地區託管nodejs應用服務器,而不是託管在執行客戶端應用請求的同一臺機器上,則上傳速度會降低2-3倍。
請讓我知道您是否有解決方案如何提高上傳性能。
有在google cloud signed-url documentation提到的一些解決方法:
斷點續傳在他們啓動區域固定例如, 如果你在美國創建一個可恢復上傳網址,並給它一個客戶端 在亞洲,上傳仍然通過美國。在沒有啓動的地區執行可恢復的 上傳可能會導致上傳緩慢。 爲了避免這種情況,您可以構建初始的POST請求,並由服務器對 進行簽名,但會將簽名的URL提供給客戶端,以便上傳從其位置發起,以便 。一旦啓動, 客戶端可以正常使用生成的會話URI來生成不需要簽名的PUT請求 。
但是與參考:
- 我不可能找到任何代碼示例:一旦客戶端從服務器接收簽名 URL如何初始JSON API調用可被構造??
- 第一次通話應該預期什麼?以及如何提取 會話URI
- 如何使用會話URI上傳更多的塊?