跳至主要內容

企业级Web后端工程生命周期

holic-x...大约 4 分钟碎片化碎片化

企业级Web后端工程生命周期

学习核心

  • 需求管理
  • 需求开发
  • 测试
  • 部署
  • 运维(测试(DEV\SIT\UAT)、生产(PROD))
  • 安全

学习参考

开发规范

1.需求管理

​ 基于PaaS平台结合线上线下进行Web开发的生命周期管理:

  • 需求评审:构建需求Story进行评审,随后开发人员构建开发子任务(创建开发相关Story)进行相应的业务开发
  • 开发联调:开发完成与前端组员进行项目联调(本地自测、DEV联调)
  • 项目提测:基于CI/CD流水线部署,进行自测 ->冒烟测试(开发侧)-> SIT测试(提测)-> UAT测试(转测),随后交由产品验收
  • 上线发布:上线准备(文档准备、环境准备、流程疏通)-> 项目发布

核心:需求评审->开发->联调->测试->产品验收->发布

2.需求开发

  • 需求分析:概要设计、功能分析
  • 项目开发:技术栈选型(开发语言、框架选择)、开发规范(日志规范、异常处理规范、响应规范设计等)
  • 前后端联调:接口开发、自测完成进行前后端联调,确认功能的可靠性
  • 团队协作:Git(内部Gitlab),多版本分支管理(分支约束、命名规范)
    • bug修复:hotfix
      • 线上版本发现bug需进行紧急修复,拉取main最新版本代码进行修复,修复完成合并到main(指定tag),待验证功能完备后发布至生产环境
    • 功能开发:feature
      • 在feature分支下开发功能版本,开发完成可部署到流水线DEV环境进行自测
    • 测试分支:test
    • 主分支:main(对应发布版本tag)

3.测试

  • 接口自测:接口开发完成,编写单元测试用例进行接口自测(接口文档:apifox)
  • 联调测试:与前端进行联调,保证业务的连续性和接口的可靠性
  • 性能测试:使用JMeter、WRK等测试框架对接口性能进行压力测试,优化接口

测试类型

  • 单元测试:编写单元测试代码进行验证代码的正确性
  • 逻辑测试:专业的测试人员进行逻辑验证,此环节进行协助测试人员把想到的所有情况都列举一遍
  • 回归测试:功能开发完成或者代码进行变更,会在预发布环境再次进行逻辑验证,称之为回归测试
  • 性能测试:项目遇到性能问题的情况下,进行性能测试
  • 压力测试:测试当前系统及所使用的资源能支撑的业务规格

4.部署

​ 基于CI、CD的流水线部署,区分不同的部署环境,需根据项目不同生命周期进行切换

  • 开发环境(自测、联调)
  • 测试环境
    • SIT测试环境(提测)
    • UAT测试环境(转测)
  • 生产环境
    • 预发布环境(上线前的检验环境)
    • 生产环境(真正上线版本,交付业务使用)

5.运维(测试(SIT\UAT)、生产(PROD))

  • 部署跟踪:跟踪部署容器发布日志,确认服务正常启动

  • 监控告警

    • 系统指标监控:基础设施的性能情况,磁盘I/O,网络情况,cpu负载
    • 应用性能监控:API响应耗时、应用运行时情况、异常情况日志记录
    • 业务指标监控:用户日活、用户新增等业务数据
  • 线上问题定位

    • 日志规范:根据服务日志快速定位生产问题
    • 平台监控:通过平台监控提示定位接口异常
    • 链路跟踪:微服务场景下排查接口问题,通过traceId根据接口调用情况

6.安全

开发安全:办公网络内网访问安全,外网连接需要VPN,引入第三方组件需进行开发评估

数据操作安全:基于具有审计功能的工具上操作数据,监控数据操作行为并记录异常情况(例如Mysql、Redis、SSH到服务器的操作)

代码安全:收敛权限,版本发布需要review&审核

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3