暂时禁用我的Google App Engine应用程序的建议方法是什么,以便我可以执行架构迁移?

时间:2013-02-10 13:06:38

标签: google-app-engine schema-migration

我想禁用用户对我的应用的访问权限,以便我可以执行架构迁移。我已经研究了一些可能性并发现了可能的缺点:

  1. 禁用数据存储区写入 - 我只是将整个应用程序关闭,以便人们看不到任何错误等。此外,我认为禁用写入会阻止我执行迁移。

    < / LI>
  2. 禁用应用程序 - 我不清楚这会仅为我的用户禁用它,让我无法执行迁移。我也不确定禁用/启用周转时间。

  3. 将我的域名重定向到临时页面 - 我的应用仍可在appspot.com上访问

  4. 上传我的应用程序的新版本,该版本不响应除了指向“暂时关闭”页面之外的请求。

  5. 有什么建议吗?

3 个答案:

答案 0 :(得分:2)

是否无法同时使用这两种架构,并使用新版本的应用程序进行迁移,该版本仅使用新架构。通过这种方式,您可以随时回到旧版本。

顺便说一下。由于数据存储区是无架构的,因此我总是可以更改“架构”,而无需关闭应用程序。

答案 1 :(得分:2)

建议4似乎可能是最好的方法。一些框架具有“维护模式”,其中所有传入的请求将被重定向到指示由于维护而导致站点停机的页面。如果您的框架不支持这种模式,您只需上传新版本的应用程序(可能会调用版本maintenance)并切换到您的新默认版本。此版本可能是一个空的应用程序,其中所有传入的请求都转向“维护页面”,指示该站点已关闭以进行维护。然后使用迁移代码手动转到应用程序版本并执行它(http://<version>.<appname>.appspot.com)。完成迁移后,使用新架构将应用程序默认版本切换到新版本。

解释您的其他想法

  1. 禁用写入会阻止您对应用程序进行写入操作。我相信这更适合从一个应用程序迁移到另一个应用程序或其他“冻结”数据存储区的应用程序。
  2. 禁用该应用程序会完全降低该应用程序
  3. 重定向域会导致迁移时出现DNS延迟,这可能需要48小时才能完全传播(切换到临时页面,然后切换回新版本)
  4. 如前所述,恕我直言,这将是最佳方式。

答案 2 :(得分:0)

转到 GCP > 应用引擎 > 设置 > 禁用应用程序。

您可以随时启用您的应用程序。

如果您禁用此应用程序,将会发生一些事情:

  1. 该应用将停止服务

  2. 所有数据和状态将被保存

  3. 在适用的情况下仍会产生帐单费用

  4. 您的任务队列将继续运行。它们可以在 Cloud Tasks UI 中暂停

相关问题