背景:目前在做公司系统迁移的任务,需要将一个系统的能力拆分到一个新的系统,涉及到DB的的一些数据

步骤:

(1)首先涉及架构方案,比如针对数据的处理,存量数据和增量的数据。

存量数据同步的方式:

存量的数据可以通过离线表清洗出id,然后通过接口调用的方式进行数据迁移。

增量数据同步的方式:

1、使用消息的方式:增量数据就需要数据进行双写,比如商家修改一条数据,则先在原有系统A操作,然后发送一个消息给A,然后A在消费这个消息通过接口调用B系统,将数据异步的写入到B,这样做的好处是,可以使用消息重试的特性防止接口调用失败

2、使用DB的drc同步方式,B系统的DB监听A系统的db变更消息,进行数据的同步

最终我这边选择的方式,使用的是方案1

使用方案1可能会遇到的几个问题

1、如果A系统频繁的修改,消息有延迟该如何处理?

使用分布式锁对当前的修改记录锁住,如果第二次修改到来,第一次没有完成,则获取锁失败。这样分布式锁就可以保证这次修改的数据是原子的操作。

2、如何同步过去的数据是最新的?

通过分布式的锁保证了当前执行的数据是正确的,每次消息到来,都去db查询最新的数据进行更新。

3、增量,存量数据执行的过程,保证数据的一致性?

先存量先上线,DB有数据则更新,否则插入。然后在存量同步,有则更新,没有则插入。这样就保证数据的一致性。

(2)数据的核对

要保证A,B系统数据的一致性,使用实时核对的方式,调用A,B系统接口进行数据比对,如果发现数据不一致,则使用同步订正工具进行数据订正

(3)数据库如果不可用,怎么处理?

目前mysql的DB都是主备的方式,主写,从读。读写分离。可以使用failover +消息的方式进行DB切换的方式。

如果主库挂掉,那么写往faileover里面写,读的时候从 从库+failover库读取。如果主库恢复了,则将failover数据库中数据删除,然后使用消息出发将数据写入到主库,然后在同步到从库,保证永远都是主库写入到从库。

系统迁移涉及到的方案相关推荐

  1. 还在为系统迁移烦恼?掌握这些“基本法”解锁更多可能

    简介: 社区评论系统在完成了基础功能建设后,开始逐步将老系统业务迁移到新系统,实现整体架构统一.新系统功能赋能老业务.节省系统维护成本:迁移过程本身虽然枯燥无味,但并不妨碍通用解决方案的沉淀,本文以评 ...

  2. 服务器系统迁移方案,服务器与应用系统迁移方案.doc

    服务器与应用系统迁移方案 服务器和应用系统迁移方案 一.迁移方案总体思路 新旧系统的迁移是一个整体系统工程.迁移必须保证用户系统建设的相关要求,在迁移过程中,我们需要重点考虑几个问题: 1.数据迁移如 ...

  3. 服务器和应用系统迁移方案

    服务器和应用系统迁移方案 一.迁移方案总体思路 新旧系统的迁移是一个整体系统工程.迁移必须保证用户系统建设的相关要求,在迁移过程中,我们需要重点考虑几个问题: 1.数据迁移如何保障"业务中断 ...

  4. [转载]服务器和应用系统迁移方案

    服务器和应用系统迁移方案 一.迁移方案总体思路 新旧系统的迁移是一个整体系统工程.迁移必须保证用户系统建设的相关要求,在迁移过程中,我们需要重点考虑几个问题: 1.数据迁移如何保障"业务中断 ...

  5. 系统迁移必知会(多年总结)

    非常幸运,这几年系统迁移的事情基本被我赶上了,从外部系统迁移到内部系统迁移,从小项目到大项目都实践过.迁移中踩过的坑和自我的总结,在这里给大家分享分享. 随着业务的发展,原有系统支撑当前业务就显得力不 ...

  6. 分享一次险象迭生的系统迁移【真实案例】

    一.背景 因为系统数据量持续性增大,腾讯云的MySQL已经达到瓶颈,无法进行升级操作,如果自己搭建一个分库分表系统,速度和可靠性上面都会很差,综合各方面考虑,最后决定采用阿里云的PolarDB-X分布 ...

  7. Dell戴尔G7 7588换m.2 nvme固态硬盘+系统迁移

    先科普一下 SATA是一种时下非常流行的串行硬盘接口规范, 是这个样子的 PCIe是一种高速串行计算机扩展总线标准, 几乎任何扩展都可以通过PCIe连接, 比如固态硬盘显卡网卡磁盘阵列卡, 是这个样子 ...

  8. 倒计时9天 | 金仓KFS如何助力S市政务电子系统迁移升级?

    2022年2月25日晚10点 上线倒计时9天,愁云惨淡路在何方 日落月升,喧嚣的城市,逐渐归于宁静. 此刻,S市M大楼依旧灯火通明,作为X项目开发商项目经理的我,还在为项目的如期上线紧张地忙碌着.离上 ...

  9. AIX 系统迁移安装

    简介 系统迁移是在与其当前版本不同的操作系统版本上安装系统的一种方法.IBM AIX 安装提供了在不同版本上安装系统的各种方法.您可以选择以下方法: 新的.完全覆盖式的安装会覆盖选定硬盘上的所有数据. ...

  10. 【复杂系统迁移 .NET Core平台系列】之认证和授权

    源宝导读:微软跨平台技术框架-.NET Core已经日趋成熟,已经具备了支撑大型系统稳定运行的条件.本文将介绍明源云ERP平台从.NET Framework向.NET Core迁移过程中的实践经验. ...

最新文章

  1. Eclipse下修改工程名
  2. WebMagic功能——XPath、CSS选择器、正则表达式 || 抽取元素API、获取结果API || ​​​​​​​获取链接||​​​​​​​使用Pipeline保存结果
  3. [ARM异常]-ARM体系中是否支持中断嵌套
  4. Dubbo 3.0 前瞻之:常用协议对比及 RPC 协议新形态探索
  5. 花里胡哨?一起来看看 PyCharm 2019.3 增加了哪些新功能吧
  6. dotNET Core 3.X 使用 Web API
  7. 计算机课的情感目标是什么意思,教案中情感目标是什么.doc
  8. C++ 在dynamic_castlt;gt;用法
  9. java拷贝字符文件
  10. QQ音乐(15.9.0)去广告绿色版
  11. 数据权限设计研究-行数据权限
  12. sop流程图模板_SOP模板-标准操作流程编写程序
  13. jQuery练习_狂拍灰太狼
  14. ant design pro v2 - 权限控制
  15. 千亿级平台技术架构:为了支撑高并发,我把身份证存到了JS里
  16. js函数arguments的使用
  17. LeetCode(C++):寻找两个有序数组的中位数
  18. 【陈鹏老师精益项目实战】华北区防水材料企业精益生产项目第四期启动
  19. Office系列及WPS等常用办公软件学习教程
  20. 软工实践第二次结对作业(作业五)

热门文章

  1. html中颜色打字机效果,基于Css3和JQuery实现打字机效果
  2. 装X神器--Hacker Typer
  3. 原生/RN/Flutter选型
  4. 不停机与停机更新_Kubernetes的零停机滚动更新
  5. word文档中如何添加目录
  6. 微信浪漫告白小程序java_微信表白小程序有哪些?微信小程序520表白神器推荐...
  7. android 源码导入android studio中(仿佛打开了新世界)
  8. 解决本地网络适配器的驱动程序可能出现问题(未连接,连接可用或连接不可用)
  9. 有机咖啡最佳抗氧化的好处
  10. 华为云服务-应用部署2-创建环境到创建应用