我应该将GAE静态文件移至Google Cloud Service吗?

时间:2014-04-23 19:29:26

标签: google-app-engine google-cloud-storage google-cloud-platform

我的GAE项目中有很多静态json文件,每个页面都动态加载了ajax。它们大约有3GB,所以我想把它们转移到谷歌云存储,它有5 GB的最大可用空间。我不确定这会产生什么不同。还有:

  • 如何批量上传到GCS。有没有用户友好的工具?我尝试通过GCS控制台界面(https://console.developers.google.com/storage)上传它们,但它添加了错误的类型(二进制/八位字节流)而不是json,并且默认情况下将文件设为私有,这不可能是批量更改。

  • 这是个好主意吗? GAE静态文件和GCS之间的带宽是否存在成本差异?这些文件不会被动态上传或更改,但不知何故,我不会将它们与项目代码一起存储。

2 个答案:

答案 0 :(得分:1)

据我所知,没有通用的批量上传工具。根据您使用的语言,您可以编写一个相对简单的代码来将这些文件移动到存储桶中,并在它们上设置正确的选项(mime类型,访问权限)。

第一个TB的网络流量定价是相同的。之后Google Cloud Storage会变得更便宜,而我在App Engine pricing page上看不到类似的折扣时间表。

答案 1 :(得分:0)

您可以在-m上添加gsutil cp选项,以进行“多”上传,至少从2017年开始,请参见下面的博客文章链接。来自gsutil文档:

$ gsutil help cp
...
If you have a large number of files to transfer you might want to use the
gsutil -m option, to perform a parallel (multi-threaded/multi-processing)
copy:

  gsutil -m cp -r dir gs://my-bucket
...

根据this blog post from year 2017中的图形,这可以快很多倍,作者写道:

Gsutil提供了-m选项,该选项执行并行(多线程/多处理)复制,可以显着提高上传的性能