【问题标题】:Google Blobstore versus Google Cloud Storage [closed]Google Blobstore 与 Google Cloud Storage [关闭]
【发布时间】:2012-03-29 02:17:16
【问题描述】:

我们的应用程序托管在用于 Java 的 Google 应用引擎上,我们需要将献血者感谢证书(html 文件)存储在某个地方。

因此,我们可以使用 Google Blobstore 或 Google Cloud Storage。我知道这两种解决方案都可以使用 gae for Java 来实现

但是,我们的问题是决定使用哪一个。这两种方法的优缺点是什么?

我们是非营利组织,不能支付很多费用。

【问题讨论】:

  • 我觉得这个问题太宽泛了,因为它目前的措辞。您可以自己进行研究,以自己很容易地找出这两种方法的优缺点。如果您有特定的问题,这对 StackOverflow 很有帮助。

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


【解决方案1】:

如果您要开始一个新项目,我会选择 Cloud Storage。

Google 似乎比他们的 blobstore 平台更努力地推动他们的云存储平台。例如,当前以编程方式将文件写入 blobstore is deprecatedis supported by Cloud Storage。我无法预测未来,但我敢打赌,Google 会越来越多地弃用 blobstore API,转而支持 Cloud Storage API,这将导致令人头疼的问题。

更新:不再支持以编程方式写入 blobstore,但应用引擎完全支持。此外,您可以使用 blobstore API 并仍然使用 Cloud Storage 作为后端。在这一点上,很明显 Cloud Storage 将比 blobstore 更长寿。

2017 年更新:Google 的 official recommendation 现在是云存储而不是 blobstore。提前 4 年称为这个。

【讨论】:

  • 鉴于他们已将 App Engine 数据存储区“提取”到一个自包含的云服务中,很明显他们正在转向一种类似 AWS 的离散服务模型,您可以单独或一起使用。谷歌云存储已经扮演了这个角色并得到了积极的推广;而 Blobstore 似乎是多余的。
【解决方案2】:

最好使用 Blobstore。该服务有 5 GB 的免费空间(截至 2012 年 3 月)。云存储是一项付费服务​​。 App Engine blobstore 类似于 Amazon S3,但灵活性较低。它具有基于 HTTP 的 API 和 Java / Python API(请参阅http://code.google.com/appengine/docs/java/blobstore/overview.html)。

【讨论】:

  • Cloud Storage 中的默认存储桶也是免费的,最高可达 5GB。除此之外,截至目前,它们的成本相同:0.026 美元/GB/月。
  • 读取和写入到 BlobStore 的成本在一点之后,CloudStore 他们不只是为超过 5GB 限制的存储付费。很明显,谷歌想要为 CloudStore 弃用 Blobstore,他们正在使 CloudStore 成为实现这一目标的更便宜的选择。以及删除 Blobstore 的可笑上传 url 回调要求。 GCS 是普通的旧 PUT/POST 到 Servlet 或从服务器端写入流。
  • 实际上 Blobstore 在图像方面更好,因为可以轻松地将调整大小的图像提供给许多应用程序,并且一次只能从 Cloud Storage 提供一个调整大小的图像。 (cloud.google.com/appengine/docs/java/images/…)此外,当使用 Blobstore 时,请求不会通过服务器,而是直接将图像提供给客户端应用程序。这两个原因使 Blobstore 对我来说更好。 (现在 Blobstore 也没有大小限制)
【解决方案3】:

首先,我想说的是,如果您的 HTML 文件很小(或者通过 gzip 压缩可能很小),那么只需将其作为 BlobProperty 存储在数据存储中并添加元数据属性以便您可以检索它稍后适当。

如果这不是一个选项,那么也许考虑一下您的应用程序的未来增长。 Cloud Storage 对 Blobstore 的两大优势是 1) 第三方可访问性和 2) 没有文件大小限制。

  • 其他服务是否也需要读取或写入这些文件?然后使用 Cloud Storage。
  • 您的文件是否会超过 50MB?或者它们的大小可能是未知的?然后使用 Cloud Storage。

但是,如果您知道这两个问题永远不需要为您的应用程序解决,那么请坚持使用 Blobstore。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2014-08-26
  • 2018-11-06
  • 2020-05-03
  • 2013-06-27
  • 1970-01-01
  • 2014-11-24
  • 2015-06-15
  • 2015-06-13
相关资源
最近更新 更多