Tech
[程序员] 比对工具:渐进式改造跑得通的隐形基础设施
比对工具,我做老系统改造时唯一不省的东西
8 年里我反复总结过一句话:
老系统改造,新老两边的输出如果不能用工具自动 diff,就只能
靠人盯。靠人盯一定会漏。
漏的不是大 bug——大 bug 上线 1 小时就报警了。
漏的是那种"看起来对但不对"的——单跑任何一边都看不出来,
机器把全量数据 diff 一遍,问题才浮出来。
下面是 4 个例子,都是真实经历过的项目,做了脱敏。
例 1 · 订单类系统迁移的 dump 比对
上篇提过的"老语言迁到主流语言"的项目,跨 14 个月切完。
这 14 个月里整个迁移就靠一件事撑着: dump 比对 。
老系统的事件流 dump 一份,新系统的事件流 dump 一份,
每天定时跑 diff,差异写报表。
期间发现的 11 个"看起来对但不对"的 bug—— 全部是 diff
报表先发现,人后看到的 。
最典型的一类:同一个业务状态,老系统用字符串表达,新系统用
枚举表达,两边语义其实一样。下游消费方两套都能解析——直到
diff 报表跑出来"同一条记录两种表达",我们才意识到出了问题。
如果...
Read the full discussion on V2EX
This article was aggregated from V2EX. Click to join the conversation.
View on V2EX