我已经实现了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上传更多的块?