从App Engine文件迁移到云存储

时间:2014-10-01 08:47:37

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

昨天文件API有一个未宣布的停机时间(ApiTemporaryUnavailableError),持续了几个小时。

我们现在考虑用cloudstorage(GCS)替换(现已弃用)文件API,但仍继续将blobstore API用于其他操作(如文件上传或下载)。我们还会在blobstore中保留使用文件API编写的现有文件。

主要问题似乎是,我们的应用程序稍后使用BlobInfo(以确定mime类型,文件名,列表blob)。但文档说,在GCS上编写并通过blobstore.create_gs_key插入到blobstore中的文件没有BlobInfo。

有哪些可行的解决方案?

  • 编写存储仲裁程序(使用BlobInfo或GCS元数据)
  • 除谷歌表格外,还要保留自己的BlobInfo数据表
  • 将完整代码库从blobstore转换为GCS(并将现有blob迁移到GCS中)
  • 忘记AppEngine并在Compute Engine或EC2上运行我们的独立应用程序(见下文)
  • ???

注意:我们还有一个独立版本的应用程序(在本地运行),它使用我们使用的AppEngine API部分的私有实现(我们不使用dev服务器)。应用。因此,每一段代码都需要一个本地实现。

1 个答案:

答案 0 :(得分:0)

我写了一篇关于使用GCS的要点。看看这里:https://gist.github.com/voscausa/9541133 它显示了如何在DEV中安装和使用GCS应用程序并进行部署。