我想在 Visual Basic Online 中为发布管理创建回滚任务。
我有一些步骤,但需要更多时间。
步骤是:
备份:执行原始文件的备份,以供以后回滚。
部署:将最新文件从工件复制到目标文件夹。
3.Configure — 对设置进行配置更改。
4.Rollback — 从备份中回滚文件,以防部署失败。退出前删除备份。
我们可以看到备份数据库需要很长时间。那么我们该如何优化呢?
有没有其他方法可以让我们在执行回滚任务时实现并花费更少的时间?
我想在 Visual Basic Online 中为发布管理创建回滚任务。
我有一些步骤,但需要更多时间。
步骤是:
备份:执行原始文件的备份,以供以后回滚。
部署:将最新文件从工件复制到目标文件夹。
3.Configure — 对设置进行配置更改。
4.Rollback — 从备份中回滚文件,以防部署失败。退出前删除备份。
我们可以看到备份数据库需要很长时间。那么我们该如何优化呢?
有没有其他方法可以让我们在执行回滚任务时实现并花费更少的时间?
版本中没有回滚更改的内置功能/任务,您需要通过自己的脚本来完成。
有多种选项可以被视为回滚策略。
选项#1:通过重新部署以前的版本撤消更改
第一种选择是简单地重新部署以前成功的版本。这可能适用于独立应用程序。
每当应用程序依赖于某些外部服务或涉及数据库时,这种方法就不能很好地工作。相关服务可能已升级并且不再与以前的版本兼容。数据库可能已经更改了架构,使得以前的版本不再健康。
选项#2:修复问题,重新发布
第二种选择是什么都不做。出了点问题,排除故障并修复它。一旦我们解决了这个问题,我们就可以发布另一个版本。
然而,这意味着环境将在一段时间内保持不健康,只要修复程序准备好和部署。
选项#3:了解部署失败的原因并暂时进行临时更改
上述两个选项都是有效的方法,但有一些限制。
这给我们带来了第三种选择。当修复准备就绪(选项 2)时,对环境进行最小的更改以使其暂时健康。
更多信息请参考:Implement Rollback with Release Management for TFS 2015(适用于VSTS)
您无法真正优化备份/恢复过程。
如果您使用虚拟机进行部署,那么您应该在升级之前对其进行快照,然后回滚只是恢复快照。
这将更快,几秒钟,而不是几分钟或几小时......