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

2023-12-25

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

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

  2. 禁用应用程序 - 我不清楚这是否只会为我的用户禁用它,从而使我无法执行迁移。我也不确定禁用/启用周转时间。

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

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

有什么建议么?


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

解释你的其他想法

  1. 禁用写入甚至会阻止您在应用程序上进行写入。我相信这更多的是为了从一个应用程序迁移到另一个应用程序或“冻结”数据存储的其他应用程序。
  2. 禁用该应用程序将使该应用程序完全关闭
  3. 重定向您的域会导致迁移出现 DNS 延迟,这可能需要 48 小时才能完全传播(切换到临时页面,然后切换回新版本)
  4. 如前所述,恕我直言,这将是最好的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

暂时禁用我的 Google App Engine 应用程序以便我可以执行架构迁移的推荐方法是什么? 的相关文章

随机推荐

  • Java - 等待和notifyAll

    当你对一个没有等待的对象调用notifyAll方法时会发生什么 应该有例外还是正常情况 正如您在这里所看到的 对未等待的对象调用notifyAll 不会产生任何效果
  • 如何在 Symfony2 数据库查询中使用 MATCH

    我正在为我的 Symfony2 项目构建一个搜索功能 并为其编写了 SQL 如下所示 SELECT dlc title dlc description dlc keywords FROM ShoutMainBundle Dlc dlc WH
  • 测量外部 CDN 资源的访问者 HTTP 缓存命中率

    我的网站使用几种常见的 CDN 托管资源 例如bootstrap css jquery js and fontawesome css 是否可以通过 JavaScript 获取信息 我的网站访问者在其 Web 浏览器中是否有这些资源的热缓存
  • 以编程方式更改本地安全策略

    我想在 C 中更改本地安全策略 交互式登录 不需要 ctrl alt del 我怎样才能做到这一点 我找到了我必须在注册表中更改的答案 Windows 注册表编辑器版本 5 00 HKEY LOCAL MACHINE SOFTWARE Mi
  • Git 子模块工作流程问题

    最近 我们的 Git 存储库遇到了很多问题 我们是应用程序之间总共 4 个共享存储库的 git 子模块的用户 例如 存储库 网站 共有 3 个子模块 submodule vendor api path vendor api url emai
  • ionChange - 仅检测 Ionic 2 中从视图到模型的变化

    我有一个 Ionic 2 应用程序 允许安排通知 提醒功能 嗯 要求是 当用户进入提醒页面时 应该检查是否有 已保存提醒 如果有已保存的提醒 我目前正在保存此信息 存储 时钟应显示并保存提醒时间 切换开关处于活动状态 否则 时钟应显示当前时
  • 如何消除 WinForms 滚动动画中的抖动现象?

    我正在用 C 编写一个简单的控件 其工作方式类似于图片框 只不过图像不断向上滚动 并从底部重新出现 动画效果由计时器 System Threading Timer 驱动 该计时器从缓存的图像 分两部分 复制到隐藏缓冲区 然后在其 Paint
  • Gradle:“无法缓存配置缓存状态”

    Configuration cache state could not be cached field actions from type org gradle api DefaultTask error writing value of
  • Java 中的 IEqualityComparer 接口

    更具体地说 我想要一个接口来比较只能比较相等性的对象 例如复数 但没有全序 它应该有 注意它只返回一个布尔值是 否 boolean Equals T object1 T object2 和一个哈希码函数 这样 当我使用对象 例如收集 相等
  • 如何使用 Unix 或 Windows 风格的换行符 [重复]

    这个问题在这里已经有答案了 我正在阅读stdin有时有 UNIX 风格的换行符 有时是 Windows 风格的换行符 如何使用任一类型的换行符 假设您知道会有换行符 解决方案是消耗一个字符 然后决定 10 LF Unix style new
  • Mongo 查询数组中的嵌套字段。

    我有一个具有以下结构的文档 id fkwjefioew genres id fewkjfewf name Shooter 我需要能够使用 mongo 的 in 进行查询 以查看文档是否具有传递参数的流派名称 例如 如果我将 Shooter
  • Jest.js 错误:“已收到:序列化为同一字符串”

    我在这个测试中遇到了一个奇怪的问题 交易测试 js import Deal from src models Deal import apiProducts from mocks api products describe Deal gt d
  • Python 浮点精度格式说明符

    假设我有一些 32 位数字和一些 64 位数字 gt gt gt import numpy as np gt gt gt w np float32 2 4 gt gt gt x np float32 4 555555555555555 gt
  • 模拟 API 请求 Xcode 7 Swift 自动化 UI 测试

    在 Swift 2 0 中编写自动化 UI 测试时 有没有办法模拟请求 据我所知 UI 测试应该独立于其他功能 有没有办法模拟服务器请求的响应 以便测试依赖于响应的 UI 行为 例如 如果服务器关闭 UI 测试仍应运行 简单的示例 对于登录
  • 如何在远程主机中运行 bash function()?在 Ubuntu 中[重复]

    这个问题在这里已经有答案了 我正在运行一个bash脚本 但是当我尝试在远程计算机上运行函数时 它说 bash keyConfig command not found 这是我的脚本 keyConfig sed i bak r 1 s 1 2
  • 同步实现:Java

    这是一个消费者 生产者问题 我希望得到如下输出 Put 0 Get 0 Put 1 Get 1 等等 但与此相反 Consumer 类多次使用相同的 q 值 尽管使用了 wait 和 notification 方法 以及 Producer
  • iOS 共享扩展关闭键盘

    我正在为我的应用程序实现一个共享扩展 到目前为止 一切都很顺利 除了我似乎无法关闭使用默认布局 故事板自动打开的键盘 我保留默认设计 布局 SLComposeServiceViewController 其中包括预览图像和 UITextvie
  • 无法读取配置节“connectionStrings”,因为它缺少节声明

    我正在尝试将我的网页 c 移动到 IIS 7 5 服务器 我读到我需要将 WEB CONFIG 放在 WEB CONFIG 中才能实现与 sql server 2008 的连接 我已经这么做了 这是我的网络配置
  • 让 arg 在 Lua 5.2 中的 varag 函数中工作(集成在 Delphi 中)

    当使用Lua 5 2 API时 下面的代码打印 nil function debug szName print type arg end debug s 1 2 3 4 但这段代码在使用 Lua 5 1 时确实有效 并打印 table 如果
  • 暂时禁用我的 Google App Engine 应用程序以便我可以执行架构迁移的推荐方法是什么?

    我想禁止用户访问我的应用程序 以便我可以执行架构迁移 我研究了一些可能性并发现了可能的缺点 禁用数据存储区写入 我宁愿将整个应用程序关闭 以便人们看不到任何错误等 此外 我认为禁用写入将阻止我执行迁移 禁用应用程序 我不清楚这是否只会为我的