# Release Deployment

> 发布与部署工具。指导上线前的准备工作、部署流程、回滚方案。适用于测试通过后的正式发布阶段。

- Skill: `morning-start/release-deployment` (Agent Skill)
- Install (CLI): `npx skillmds@latest add morning-start/release-deployment`
- Raw SKILL.md: https://api.skillmd.com/api/skills/morning-start/release-deployment/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: morning-start (https://skillmd.com/u/morning-start)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/morning-start/release-deployment

---


# 发布与部署

测试通过后，进入正式发布阶段。

## 核心流程

```
发布准备 → 灰度发布 → 正式发布 → 监控与回滚
```

---

## 1. 发布准备

### 发布checklist

| 检查项 | 说明 | 状态 |
|--------|------|------|
| 测试报告已归档 | 功能测试全部通过 | ☐ |
| 代码已冻结 | 无未合并的紧急改动 | ☐ |
| 部署文档已更新 | 更新步骤清晰 | ☐ |
| 值班人员已安排 | 确保有人能处理问题 | ☐ |
| 回滚方案已准备 | 出现问题能快速回退 | ☐ |
| 通知已发送 | 相关部门已知悉 | ☐ |

### 发布公告模板

```
## 发布通知

### 发布时间
YYYY-MM-DD HH:00

### 发布内容
- [ ] 新功能1
- [ ] 优化点2
- [ ] Bug修复3

### 影响范围
[哪些用户/功能受影响]

### 注意事项
[如有特殊操作说明]
```

---

## 2. 灰度发布

### 灰度策略

| 策略 | 适用场景 |
|------|----------|
| 地域灰度 | 按地域逐步放量 |
| 用户ID灰度 | 按用户ID段放量 |
| 特性开关 | 通过配置切换功能 |

### 灰度监控指标

```
- 错误率是否上升
- 响应时间是否增加
- 业务指标是否异常
```

---

## 3. 正式发布

### 发布执行模板

```bash
# 1. 备份当前版本
./backup.sh

# 2. 拉取新版本代码
git pull origin main

# 3. 执行数据库迁移（如有）
npm run migrate

# 4. 重启服务
pm2 restart all

# 5. 验证服务健康
curl http://localhost:3000/health
```

### 健康检查清单

- [ ] 服务进程正常运行
- [ ] 端口监听正常
- [ ] 数据库连接正常
- [ ] 缓存服务正常
- [ ] 关键接口可访问

---

## 4. 监控与回滚

### 监控指标

| 类型 | 指标 | 阈值 |
|------|------|------|
| 可用性 | 在线率 | ≥99.9% |
| 性能 | 响应时间P99 | <500ms |
| 错误 | 错误率 | <0.1% |
| 资源 | CPU使用率 | <80% |

### 回滚触发条件

```
- 错误率突然上升超过5%
- 核心功能完全不可用
- 响应时间超过阈值持续5分钟
```

### 回滚操作流程

```bash
# 1. 停止当前版本
pm2 stop all

# 2. 恢复上一版本
./rollback.sh

# 3. 验证回滚成功
curl http://localhost:3000/health

# 4. 通知相关人员
./notify.sh "回滚完成"
```

---

## 使用场景

- 测试通过，准备正式发布
- 生产环境出现故障，需要回滚
- 灰度发布过程中的监控

## 关键产出

1. 发布计划与checklist
2. 灰度发布策略
3. 回滚方案
4. 监控报告

