跳到主要内容

业务应用发布与回退

业务应用发布冻结应用元数据并验证运行结果;平台升级更换开发平台镜像和平台运行配置。两类变更必须使用独立变更单、备份和验证结果。

当前能力边界

  • 发布版本:要求工作区干净,创建逻辑版本对应的 Git tag,并可导出应用快照 ZIP。
  • 创建运行实例:从当前开发工作区生成测试运行目录,再使用指定基座镜像启动容器。
  • 更新镜像:更换运行实例的基座镜像,不会切换应用元数据版本。
  • 版本列表目前不能把现有运行实例一键切换到某个旧版本。

因此,当前界面可完成应用版本留档和开发态运行验证,但不能替代正式生产发布系统。生产环境必须由团队自己的制品库、部署流水线和数据库变更流程接管。

发布输入

执行前记录:

项目必填内容
应用应用名称和工作区
逻辑版本唯一版本号,建议 v1.0.0
变更范围模型、页面、流程、权限、配置和扩展包
基座镜像完整标签或摘要
数据变更是否包含结构变更、迁移和初始化
备份应用 ZIP、数据库、配置和文件的位置
回退条件哪些验证失败会停止或恢复
负责人发布人、验证人和回退决策人

发布前检查

  1. 停止应用配置变更,确认其他开发者已经提交或放弃编辑锁。
  2. 版本管理 中确认不存在未提交更改。
  3. 在开发态验证模型、页面、逻辑流、审批流、权限和集成链路。
  4. 备份业务数据库、应用配置、上传文件和文档库文件。
  5. 记录当前运行实例的镜像、环境、端口、数据源、Xms、Xmx 和自定义环境变量。
  6. 数据结构变化必须有前向迁移和经验证的恢复方案。

工作区不干净、备份未完成或数据迁移不可恢复时,不得发布。

发布应用版本

  1. 进入 应用管理 / 版本管理,点击 发布版本
  2. 填写逻辑版本号和可核对的版本描述。
  3. 发布后确认版本记录和 Git tag 已生成。
  4. 导出版本 ZIP,保存到版本制品目录。
  5. 在隔离目录解压 ZIP,确认快照可读取且版本信息正确。

成功标志:工作区仍然干净,Git tag、逻辑版本、版本描述和 ZIP 一一对应。

验证运行实例

当前运行实例基于开发工作区,不会自动读取刚导出的版本 ZIP。只在确认当前工作区与已发布 tag 一致后执行以下步骤:

  1. 创建新的测试运行实例,或在变更单允许时更新现有测试实例。
  2. 选择已记录的基座镜像、环境和数据源。
  3. 不需要清空数据时,关闭 重新初始化;该操作可能删除并重建数据库。
  4. 启动实例并确认状态为运行。
  5. 用测试账号完成登录、核心查询、一次写入和一条关键业务流程。
  6. 验证定时任务、消息、外部接口或 WebSocket 等本次受影响的专项链路。
  7. 检查实例日志,不得有持续启动错误、迁移失败或连接失败。

成功标志:运行实例使用预期基座镜像,核心业务结果正确,数据和专项链路均通过验证。

回退判断

故障类型回退对象
仅新基座镜像无法启动或不兼容恢复旧基座镜像
应用模型、页面、流程或配置错误恢复上一版应用快照对应的工作区,再重建实例
数据迁移不兼容或业务数据被错误修改停止写入,按恢复方案处理数据库
平台自身无法登录或管理应用使用 平台升级与回滚 流程

执行回退

当前界面没有从版本列表直接回退运行实例的操作。按故障对象执行:

  1. 停止故障实例写入,保存日志和失败现场。
  2. 只涉及基座镜像时,使用 更新镜像 恢复已验证的旧镜像并重启。
  3. 涉及应用元数据时,在隔离工作区恢复上一版 tag 或导出的 ZIP,确认内容后按部署流程重新生成运行目录和实例。
  4. 涉及不兼容数据变更时,先确认允许丢失的时间窗口,再恢复数据库、配置和文件。
  5. 重复全部发布后验证,不得只检查首页能否打开。

数据库恢复会覆盖备份时间点之后的写入,必须由回退决策人确认。不要在原工作区直接覆盖未保存变更。

完成标准

  • 逻辑版本、Git tag、应用 ZIP 和变更单一致。
  • 基座镜像、应用快照和业务数据库三个版本分别有记录。
  • 登录、查询、写入、权限和关键流程均通过。
  • 受影响的调度、消息、外部接口和实时推送已完成端到端验证。
  • 发布或回退后的日志没有持续错误。
  • 观察窗口结束前保留上一版 ZIP、镜像和备份。