我们的应用程序托管在谷歌的Google应用程序引擎上,我们有一个要求,我们想在某处存储献血者鉴赏证书(html
文件)。
因此,我们可以使用Google Blobstore或Google Cloud Storage。我知道使用gae for Java可以实现这两种解决方案
但是,我们面临的问题是决定使用哪一个。这两种方法的优点和缺点是什么?
我们是非盈利的,不能付出很多。
最好使用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)。
如果你正在开始一个新项目,我会选择云存储。
谷歌似乎正在推动他们的云存储平台比他们的blobstore平台更难。例如,目前以编程方式将文件写入blobstore is deprecated但is supported by Cloud Storage。我无法读懂未来,但我敢打赌谷歌将越来越多地使用blobstore API来支持云存储API,这将导致头痛。
更新:不再支持以编程方式写入blobstore,但在app引擎上完全支持它。此外,您可以使用blobstore API并仍使用云存储作为后端。在这一点上,很明显云存储将比blobstore更长。
2017年更新:谷歌的official recommendation现在是云存储而不是blobstore。提前4年称这一点。
首先,我要说如果您的HTML文件很小(或者通过gzip压缩可能很小),那么只需将其作为BlobProperty存储在数据存储区中并添加元数据属性,以便以后可以适当地检索它。
如果这不是一个选项,那么可以考虑应用程序的未来增长。云存储在Blobstore上的两大特点是1)第三方可访问性和2)没有文件大小限制。
但是,如果您知道这两件事情永远不需要为您的应用程序解决,那么请坚持使用Blobstore。