## 上线生产整体流程

1. 信息同步
2. 分支管理，提交审核、代码review、环境发布
3. 自动化测试，测试用例分层，功能测试，基础测试
4. 生产发布行事历，SQL、配置、镜像更新步骤

## 后端研发避坑指南

1. 通用流程
   - 需求沟通
   - 接口文档设计
   - 开发&自测&联调
   - 测试&修复bug
   - 上线
2. 技术思考点
   - 对于重要业务(如订购、退订、支付等核心业务)，是否需要保存上下文信息，异常监控通知；保存上下文信息：打印日志、存入mysql、redis等存储中间件, 邮件报警等
   - 对于高频、分布式场景，是否需要引入限流、分布式锁、幂等、保障业务安全
   - 限流，建议使用分布式限流，如springcloud-alibaba的Sentinel、redis+lua、nginx的rate-limiting
   - 分布式锁：锁的粒度是否经过评估，精确到资源、租户、行为？锁的实现
   - 幂等：针对MQ消息监听、订购、退订等场景，需要保证幂
   - 对外接口是否需要鉴权，鉴权逻辑是否经过有效评估
