未清
六行清单
| 应用 | 机器 | 库 | 接口 | 接电话的人 | 这一行 |
|---|---|---|---|---|---|
| 订单中心 | app-ord | mysql-ord | 支付网关 | 订单值班 | |
| 库存 | app-stk | mysql-stk | 订单中心 | 仓配值班 | |
| 夜间报表 | app-rpt | 邮件网关 | |||
| 附件文件 | fs-doc | nas-01 | 共享目录 | 平台值班 | |
| 货款对账 | app-pay | mysql-pay 与 mysql-pay-dr 两行抢同一应用 | 银联文件 | 财务值班 | |
| 商品主数据 | app-mdm | oracle-mdm | 订单、库存都调 |
第 1 节 · 约 30 分钟
机房租约还剩四个月。导出 2140 行,列很齐。你只翻了六行,已经看见空格和打架。
能搬的单位是一条还在接单的业务。应用、它跑的机器、它写的库、它半夜调用的接口、出事时接电话的人。五样对得上,这一行才能进波次。缺一个,切的时候会有人问:这个批任务打哪台。没人答得上来,窗口就停在那一句。
未知依赖会在两点十七分回来。回来的样子是超时、脏数据、找不到人。清单上空白的负责人,两行抢同一个库名,备注写联系人已离职。它们不会在切流量那天自己消失。已知故障至少有人认。未知的那一行,窗口里会变成空号。
接口不只登记网页。有人用文件落地,有人用存储过程互调,有人用凌晨的邮件。表经常只登记了虚拟机。虚拟机迁走了,落地目录还在旧盘上,报表会空跑一宿。猜一个名字填进去,切的时候那个号没人接。
冲突也要摊开。同一套货款对账,表里挂着 mysql-pay 和 mysql-pay-dr。你取最新一行就走,最新一行可能是去年容灾留下的影子。对不上就停,进冲突堆,不进第一波。波次图吃的是已经对上的五元组。吃未知项,图会好看一周,窗口里会崩。
值班室墙上的电话表,比资产表更接近真相。夜里响的那台,才是依赖。资产表里的「最近登录人」可能是三年前装系统的人。你要的是今晚接电话的班次。班次问不到,这一行就是未知。未知可以进待问名单。第一波只装夜里能找到人的。去机房看实际连接。把定时任务的脚本打开,看它写死了哪台地址。问完仍不清楚的,写在清单上。
每行选一个状态。缺字段的标未知,打架的标冲突。然后才能谈第一波。
| 应用 | 机器 | 库 | 接口 | 接电话的人 | 这一行 |
|---|---|---|---|---|---|
| 订单中心 | app-ord | mysql-ord | 支付网关 | 订单值班 | |
| 库存 | app-stk | mysql-stk | 订单中心 | 仓配值班 | |
| 夜间报表 | app-rpt | 邮件网关 | |||
| 附件文件 | fs-doc | nas-01 | 共享目录 | 平台值班 | |
| 货款对账 | app-pay | mysql-pay 与 mysql-pay-dr 两行抢同一应用 | 银联文件 | 财务值班 | |
| 商品主数据 | app-mdm | oracle-mdm | 订单、库存都调 |
留下三堆。未知未清,下一节的窗口里没有刹车可装。下一节写中止权。