Files

2.0 KiB

回滚流程指南

触发条件: 部署后出现严重问题 响应时间: < 30分钟

回滚类型

Type 1: 代码回滚(推荐)

适用于:代码缺陷、功能问题

Step 1: 停止新版本

Run:

# Docker环境
docker stop novalon-website

# 传统环境
pm2 stop novalon-website

Step 2: 切换到上一个稳定版本

Run:

git checkout v-test-phase-2-complete
npm ci
npm run build

Step 3: 重新部署

Run:

# Docker环境
docker build -t novalon-website:rollback .
docker run -d -p 3000:3000 novalon-website:rollback

# 传统环境
npm run start

Step 4: 验证回滚

Run:

curl https://www.novalon.cn/health

Expected: 健康检查返回200

Type 2: 数据库回滚

适用于:数据损坏、数据丢失

Step 1: 停止应用

Run:

docker stop novalon-website

Step 2: 恢复数据库备份

Run:

# 恢复最近的成功备份
docker exec postgres pg_restore -U postgres -d novalon /backup/backup-$(date +%Y%m%d-%H%M).sql

Step 3: 重启应用

Run:

docker start novalon-website

Step 4: 验证数据

Run:

# 检查关键数据是否存在
curl https://www.novalon.cn/api/health

Expected: 数据正常

Type 3: DNS回滚(紧急)

适用于:严重故障,需要快速切换

Step 1: 更新DNS记录

Run:

# 将www.novalon.cn指向备用服务器
# 备用服务器IP: [待填写]

Step 2: 验证切换

Run:

nslookup www.novalon.cn

Expected: DNS指向备用服务器

回滚后验证

功能验证

  • 所有核心功能正常
  • 数据完整性验证
  • 监控指标正常

通知

  • 通知技术团队
  • 通知业务团队
  • 通知管理层
  • 记录回滚原因

回滚后分析

问题分析

  • 问题原因: [待填写]
  • 影响范围: [待填写]
  • 影响用户数: [待填写]

改进措施

  • 预防措施: [待填写]
  • 测试改进: [待填写]
  • 流程改进: [待填写]