共计 553 个字符,预计需要花费 2 分钟才能阅读完成。
公司原有项目是使用某个国产框架的,现在这框架已经很久没维护了,论坛也没啥人更新,于是要求迁移到 springboot 上
其实是我主动提的
前端是若干个小程序,项目架构是小程序通过 nginx 访问后端服务,没有网关,没有中间层;
梳理完业务和功能后,发现工作量巨大,700 多个接口。几乎所有接口都要手动改一遍。
目前正在确定发布方案和回滚方案,我思考的方案如下:
发布方案
- 方案一:渐进式发布方案
- 后端服务隔一定周期 (比如一周),或若干个模块,完成开发和测试后,先行上线一部分接口;
- 新老项目同时并存,线上重新发布一个服务,端口待定,老的小程序访问老的项目,新的小程序访问新的项目;
- 小程序端修改这部分接口的访问域名为新项目,并发布体验版进行内部测试;
- 内部测试完成后上线;
-
优点:
- 上线范围可控,数量可控,能减少一次性大规模部署带来的风险;
-
缺点:
- 接口出现问题,因为小程序端修改了 URL,无法快速回滚;
- 方案二:整体迁移发布方案
- 项目迁移完成且测试完毕后一起上线;
- 新服务,或通过权重配置,切换一部分流量到新项目;
- 新老项目同时并存,线上重新发布一个服务,端口待定,将 nginx 流量切换到新项目;
- 内部测试完成后上线;
-
优点:
- 接口出现大范围问题,可以快速切换回原项目;
-
缺点:
- 接口多,出现问题几率大;
请问大佬们,有什么好的补充点以及方案吗?谢谢!
正文完