4.8 KiB
4.8 KiB
小虾 SaaS - 生产部署检查清单
🔒 安全检查
1. 密钥和密码
- 修改
JWT_SECRET_KEY(至少 32 位随机字符) - 修改数据库密码
- 修改 Redis 密码(如果启用)
- 配置 SMTP 应用专用密码
- 不要将
.env文件提交到 Git
2. CORS 配置
- 更新
CORS_ORIGINS为实际域名 - 移除开发环境的 localhost
3. 数据库
- 使用 SSL 连接数据库
- 限制数据库访问 IP
- 定期备份数据库
- 配置连接池限制
4. API 安全
- 启用速率限制(取消注释 RateLimitMiddleware)
- 配置适当的速率限制值
- 启用 HTTPS
- 配置防火墙规则
🚀 性能优化
1. 应用配置
- 设置
DEBUG=false - 设置
ENVIRONMENT=production - 使用多个 worker 进程
- 配置 Gunicorn(推荐 4 个 worker)
2. 数据库优化
- 创建适当的索引
- 配置连接池
- 启用查询缓存
- 监控慢查询
3. Redis 配置
- 配置持久化(AOF)
- 设置内存限制
- 配置驱逐策略
📊 监控和日志
1. 日志
- 配置日志轮转
- 设置日志级别为 INFO
- 集成日志聚合(ELK/Loki)
- 配置错误通知
2. 监控
- 配置健康检查端点
- 设置性能监控(CPU/内存/磁盘)
- 配置数据库监控
- 设置告警规则
3. 可观测性
- 集成 APM(Application Performance Monitoring)
- 配置分布式追踪
- 设置业务指标监控
🗄️ 数据库
1. 迁移
- 测试所有迁移脚本
- 准备回滚脚本
- 在预发布环境测试
- 备份生产数据
2. 备份策略
- 配置自动备份(每日)
- 测试备份恢复流程
- 异地备份
- 保留策略(30 天)
🌐 基础设施
1. 域名和 SSL
- 配置域名解析
- 申请 SSL 证书
- 配置 HTTPS 重定向
- 配置 HTTP/2
2. 反向代理(Nginx)
- 配置负载均衡
- 配置静态文件缓存
- 配置 Gzip 压缩
- 配置请求大小限制
3. 容器化
- 优化 Docker 镜像大小
- 配置健康检查
- 配置重启策略
- 配置资源限制
📧 邮件服务
1. SMTP 配置
- 测试邮件发送
- 配置 SPF 记录
- 配置 DKIM 签名
- 配置 DMARC 策略
2. 邮件模板
- 检查所有邮件模板
- 测试不同邮件客户端显示
- 添加取消订阅链接
🧪 测试
1. 功能测试
- 运行所有单元测试
- 运行集成测试
- 手动测试核心流程
- 测试错误处理
2. 性能测试
- 负载测试
- 压力测试
- 并发测试
- 数据库性能测试
3. 安全测试
- SQL 注入测试
- XSS 测试
- CSRF 测试
- 权限绕过测试
📝 文档
1. 用户文档
- API 文档完整
- 使用指南清晰
- 错误码说明
- 常见问题 FAQ
2. 运维文档
- 部署流程文档
- 故障排查手册
- 备份恢复流程
- 扩容指南
🔄 CI/CD
1. 持续集成
- 配置自动测试
- 配置代码质量检查
- 配置安全扫描
- 配置构建流程
2. 持续部署
- 配置自动部署
- 配置蓝绿部署
- 配置回滚机制
- 配置部署通知
🚨 应急预案
1. 故障处理
- 准备应急联系人列表
- 制定故障响应流程
- 准备回滚计划
- 制定数据恢复流程
2. 容量规划
- 评估初期用户量
- 规划扩容方案
- 准备备用资源
- 制定扩容预案
✅ 部署前检查
# 1. 运行测试
pytest tests/ -v
# 2. 检查环境变量
cat .env
# 3. 检查数据库连接
psql $DATABASE_URL -c "SELECT 1"
# 4. 检查 Redis 连接
redis-cli -u $REDIS_URL ping
# 5. 测试邮件发送
python scripts/test_email.py
# 6. 检查 Docker 镜像
WEB_PORT=3001 docker compose -f infra/docker/compose.yml build api worker web
# 7. 检查数据库迁移
alembic upgrade head
# 8. 启动服务测试
WEB_PORT=3001 docker compose -f infra/docker/compose.yml up -d
curl http://localhost:8000/health
📞 上线后监控
第一周
- 每天检查错误日志
- 监控 API 响应时间
- 检查数据库性能
- 用户反馈收集
第一个月
- 每周性能报告
- 用户增长分析
- 资源使用优化
- 功能使用统计
使用方法: 复制此清单,逐项检查,确保每项都已完成再上线。
优先级:
- 🔴 高优先级(必须完成):安全检查、数据库备份、基础监控
- 🟡 中优先级(建议完成):性能优化、详细监控、文档完善
- 🟢 低优先级(可选):高级监控、自动化部署、容量规划
最后更新: 2026-06-17