存量系统迁移重构总结

存量系统迁移重构总结

  1. 存量功能分析角度
    1. 业务背景
    2. 代码走读
    3. 生产数据排查
    4. 排查原则(是否是必要逻辑、是否可移除、是否过度设计、是否可简化逻辑)
  2. 方案设计
    1. 不要过度设计,适合业务的方案才是最好的。结合业务场景,保留扩展点,而非将所有功能都做扩展点。
    2. 尽量利用现有基础设施做重构,去优化路程,而非整体重写造轮子。
    3. 方案设计之初,就应考虑灰度验证方案、回退方案、上下游联动回滚。
  3. 重构过程
    1. 结对编程,重构某功能时,让新开发人去独立设计、编码。原开发人参与评审、复核。交叉角色带来的好处,原开发人能跳出定势思维、原有方案掣肘,新开发也能放开手脚去设计。坏处是开发周期会延长20%。
    2. 重构后,如何保证功能等价? 通过单测、CI自动化用例、准生产环境回放等手段
    3. 核心逻辑稳定性,核心逻辑抽象成sdk组件,不轻易修改。外围适配业务逻辑更改,也不会影响到核心逻辑。
  4. 准生产切片验证
    1. 生产数据录制、回放。思路:将应用接口的req/rsp录制保存,在重构后,对比相同req请求下,返回的rsp关键字段是否一致。
  5. 投产质量保证,操作指令、测试全流程操作、回放覆盖、投产节奏控制
    1. 操作指令,按时间线,将整个迁移过程中需人工操作的内容汇总,形成一组上下游贯穿的操作文档,据此可打通开发、测试、运维间、上下游系统间的操作信息差。
  6. 灰度策略选择(按流量、按客户、按数据范围)
posted @ 2022-06-15 17:10  starmoon1900  阅读(139)  评论(0编辑  收藏  举报