使用谷歌应用引擎的存储服务

时间:2010-03-22 18:09:27

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

我已经被分配了一个项目来在Google App Engine上创建文件存储服务。但我真的怀疑是否有可能给出30秒的限制来处理响应,而且它的BigTable只是一个数据库系统不是存储服务器。我是否正确?

6 个答案:

答案 0 :(得分:9)

您需要查看blobstore API

http://code.google.com/appengine/docs/java/blobstore/

它允许您上传大小高达50Mb的文件并直接提供,而无需通过BigTable。我正在做的是我有一个脚本,它接收一个文件,创建blobstore上传URL,然后将收到的文件发布到该URL并在bigtable中存储一个条目。 30秒的时间限制仅适用于处理时间,因此上传文件的行为不计入该时间。

答案 1 :(得分:2)

如果您只需要存储,那么比App Engine更好的选择就是最新的beta-d Google Storage

  

Google Storage for Developers是一款产品   用于存储和存储的RESTful服务   在Google上访问您的数据   基础设施。服务结合了   的性能和可扩展性   Google的云端具有高级安全性   和共享功能。强调   包括:

     

快速,可扩展,高度   可用对象库

     

所有数据   复制到多个美国数据   中心

     

读取您的写入数据   一致性

     

数百个物体   每个请求的千兆字节大小   范围获得支持

     

域范围存储桶   命名空间

     

简单,灵活   身份验证和共享

     

基于密钥   认证

     

经过身份验证的下载   来自网络浏览器

     

个人 - 和   组级访问控制

答案 2 :(得分:1)

使用并查看您是否喜欢action中的blobstore我维护

答案 3 :(得分:0)

这绝对是可能的。

还有一些类似的问题answered。有关更多实施,请参阅Google。

但总的来说,是的,30秒限制会使您的任务变得复杂,但您可以将文件分成块并将它们分别存储为文本/ blob。 App Engine's Remote API可能会自动为您执行此操作。

答案 4 :(得分:0)

请记住,每个请求限制为10MB。

答案 5 :(得分:0)

看一下这个项目的灵感:

http://django-filetransfers.appspot.com/

如果您点击页面上的链接,则可以使用源代码。