| 阶段 | 时序 | 动作 |
|---|---|---|
| 双写+数据对比 | 1 | 新rdb集群上线 |
| 双写+数据对比 | 2 | 新服务上线,无流量 |
| 双写+数据对比 | 2 | 后端自己发起的流程比如job,新服务上线一份新的,独立运行 |
| 双写+数据对比 | 2 | 消费二方mq,新服务使用新的消费组消费原有消息 |
| 双写+数据对比 | 3 | 新旧服务比较转发服务comparator上线,定时拉取新旧库数据对比是否一致,并打印对比日志 |
| 双写+数据对比 | 4 | 旧服务改造上线 |
| 双写+数据对比 | 4 | 旧服务http读、写请求转发comparator,再转发到新服务 |
| 双写+数据对比 | 5 | 运行若干天,根据数据对比结果处理程序问题,无问题后可确认写程序已无问题 |
| 双写+数据对比 | 5 | comparator打印部分新服务读请求结果,同时调用旧服务获取结果,对比是否一致,无问题后可确认读程序已无问题 |
| 灰度 | 6 | 由于数据是周期性的,而后台管理系统仅是内部人员使用,因此数据不做迁移,后台使用新旧不同前端入口做灰度流量转发 |
| 灰度 | 6 | 新服务新增数据id起始值远大于旧服务id最大值 |
| 灰度 | 6 | 由于是任务发放的业务,c端不产生新数据,都由后端生成数据,接口如果有id,转发旧服务,旧服务加开关,如大于阈值则转发新服务 |
| 灰度 | 6 | c端接口根据id查询,转发旧服务,旧服务加开关,如大于阈值则转发新服务,小于则继续走旧服务 |
| 灰度 | 6 | c端列表接口聚合新旧服务数据,旧服务做聚合,加开关 |
| 切流过渡期 | 7 | 旧服务已无有效数据,关闭聚合逻辑 |
| 切流完成 | 8 | 旧服务只做转发 |
| ip漂移 | 9 | 旧服务的ip漂移至新服务,完成迁移 |
后端服务迁移方案及过程记录
duagh72023-07-28 15:21
相关推荐
Reisentyan8 小时前
[Refactor]CPP Learn Data Day 1一水鉴天1 天前
整体设计 设计文档修订与重构修改稿 (豆包助手)20260321进击的雷神1 天前
展位号后缀清理、详情页JS数据提取、重试机制控制、地址字段重构——美国NPE展爬虫四大技术难关攻克纪实胡少侠72 天前
LangGraph 多步推理:State + Node + 条件路由,手写 StateGraphliukuang1102 天前
阿里Q3财报:全栈AI驱动下的价值重构孤影过客2 天前
X86架构黎明:从0xFFFFFFF0开始的内存空间重构与寻址深潜胡少侠72 天前
LangChain 重构 RAG:LCEL 管道语法 + 多轮对话记忆科技新芯2 天前
当AI龙虾接管购物车,Bidnex用CPS重构数字广告的信任基石sg_knight2 天前
设计模式实战:策略模式(Strategy)