如何使用谷歌应用引擎存储文件,并能够查看它?

时间:2014-08-13 04:42:53

标签: android ios google-app-engine google-cloud-storage google-cloud-datastore

我需要一种方法来存储可以通过浏览器查看的文件。目前我有一个Android和iOS应用程序,可以查询到我的谷歌应用程序引擎实例。我需要将客户端(android/ios)中的一些小文件上传到应用引擎中。我在看:

  • Blob存储区
  • google cloud storage
  • 暂时存储文件以将其传输到其他地方,例如s3

并且我不确定什么是最好的选择。我的想法是,一旦我存储了文件,如果他们在浏览器上打开链接,我就可以生成一个可公开访问的链接来查看文件(即图像或文本)。最好的方法是什么?

P.S。我已经读过blobstore似乎在5GB以下免费,而云存储甚至会为你使用的第一个GB收费吗?这是真的吗?

2 个答案:

答案 0 :(得分:3)

由于您的应用程序托管在GAE上,因此将内容保留在Googles基础架构上是有意义的,因此请立即忽略S3。

这使您可以在bs和gcs之间进行选择,而这个决定实际上取决于您的应用需求。 Blobstore是App Engine的一项功能,而GCS是一个独立的对象库。鉴于您的应用已经在GAE上运行,Blobstore是最简单,最快速的解决方案。但是GCS将为您提供更多的灵活性,并且具有更多功能(安全性,缓存,API等)。如果您使用blobstore,则所有流量都将通过App Engine,从而增加传入/传出带宽配额。另一方面,GCS拥有自己的配额。如您所述,您还需要enable billing才能使用GCS,并且会有charge for it's use

所以这取决于你需要什么 - 你的应用程序有多大,你有多少用户,你需要存储多少数据等等。“更好”的解决方案是云存储,但如果你只是需要在这里和那里存储一些小blob,blobstore可能是适合你的解决方案。就个人而言,我会选择GCS,因为它为您提供了更多的选择和灵活性。

旁注:我曾多次阅读/听说过blobstore已被弃用,最终将完全被Cloud Storage取代。

答案 1 :(得分:2)

This pagethis page显示配额限制:5GB云存储(在您的应用中Default GCS Bucket),Blobstore中的5 GB和1个数据存储。

我会使用云端存储,一旦存储,您就可以获得该文件的公共URL。