这是一份后端开发与上线时使用的检查清单,方便在需求、实现、测试和发布之间保持信息一致。具体步骤按项目规模与团队流程调整。
上线生产整体流程
- 信息同步:确认需求范围、依赖方、负责人和发布时间。
- 分支管理与代码审核:提交代码、进行 review,并明确测试环境和生产环境对应的版本。
- 自动化测试:按功能、基础能力等层次准备测试用例,完成自测、联调和回归。
- 生产发布计划:记录 SQL、配置、镜像等更新步骤,以及验证和回滚方式。
后端研发避坑指南
通用流程
需求沟通 → 接口文档设计 → 开发、自测、联调 → 测试与修复 → 上线验证。
技术思考点
- 重要业务,如订购、退订、支付等,是否保存必要的业务上下文和状态,方便排查异常?日志、数据库及告警各承担什么职责?
- 高频或分布式场景是否需要限流、并发控制与幂等处理?应围绕具体失败方式选择机制。
- 限流需要控制单个实例,还是整个业务的总量?单机与集群方案需要分别评估。Sentinel、Redis配合Lua、网关限流等是候选方式,不能仅凭使用了某个组件就认定已经实现全局限流。Sentinel 官方文档
- 分布式锁的粒度是否明确到资源、租户或行为?超时、释放及持锁期间失败的处理是否经过评估?
- MQ消息监听、订购、退订等场景是否保证幂等性,重复请求会产生什么结果?
- 对外接口是否需要鉴权,权限边界和鉴权失败行为是否清楚?
原文发布于我的个人博客:开发工作流程思考。