发布部署与回滚 — 软件工程选择题
题目
某团队遵循“构建一次、多环境部署”与不可变构件原则。生产当前运行应用构件 build-2210(版本 v6.4.2)。本次发布将 build-2287(版本 v6.5.0)部署到生产,并执行了数据库迁移脚本 mig-45,该脚本只新增可空列和索引,旧版应用不会访问这些列。发布后 20 分钟,监控发现 v6.5.0 存在严重缺陷,团队决定回滚。配置库中完整保留了 build-2210 及其元数据。下列回滚操作中,最符合发布与回滚管理规范的是( )。
A. 从 v6.4.2 标签重新编译生成新构件并部署到生产
B. 将生产应用重新部署为 build-2210,暂不执行数据库回滚,因为 mig-45 向后兼容
C. 先执行 mig-45 的逆向脚本删除新增列和索引,再部署 build-2210
D. 保留 build-2287,仅回滚配置文件,待下次发布再修复