第16章 二姨的私信

章节报错(免登陆)
下载APP,无广告、完整阅读

笔趣阁(biquge321.com)更新快,无弹窗!

    第16章二姨的私信(第1/2页)
    周三上午十点,会议室。
    项目紧急会议。线上支付系统凌晨发生故障,导致三千万交易延迟,用户投诉激增。王总、技术总监李总、产品、测试、运维、开发,二十多人挤在会议室,空气紧绷。
    “谁先说?”王总脸色铁青。
    监控组先汇报:“故障时间凌晨两点十七分,持续四十六分钟。直接原因:数据库主从同步延迟,导致读写不一致。”
    数据库负责人老赵立刻说:“我们检查了,主从同步配置没问题。是应用层有大量非索引查询,拖慢了主库,导致从库延迟。”
    开发组长小陈反驳:“我们上周才优化过查询,加了三组索引。而且凌晨两点,哪来的大量查询?”
    运维插话:“监控显示那个时间点有异常爬虫流量,可能是被攻击了。”
    安全组摇头:“不是攻击,是正常的搜索引擎爬虫,流量在正常范围。”
    会议开了半小时,各部门互相推诿,没有结论。贝西克坐在角落,没说话。他打开笔记本,在纸上画了一张图。
    时间轴:
    02:00-02:15正常
    02:15-02:17爬虫访问量轻微上升(+15%)
    02:17-02:20数据库主库CPU从30%升至80%
    02:20-02:30从库延迟从0秒升至120秒
    02:30-02:45应用报错率从0.1%升至5%
    02:45-02:50运维重启从库
    02:50-03:03服务逐渐恢复
    他观察每个人的发言。老赵说话时眼睛向右上方看(回忆),小陈说话时手不自觉地摸后颈(紧张),安全组发言简洁但语气犹豫,运维在玩笔。
    “安静!”王总拍桌子,“我要的是解决方案,不是谁的责任!现在告诉我,怎么避免下次再发生?”
    李总提议:“加硬件,扩容数据库。”
    老赵反对:“硬件成本高,而且不治本。要先找到根本原因。”
    小陈说:“我建议加强防爬虫策略,减少无效查询。”
    安全组:“那可能影响SEO。”
    又陷入争吵。
    贝西克举手。所有人都看过来。
    “你说。”王总皱眉。
    “我有个推测。”贝西克翻开笔记本,“故障的直接原因确实是主从延迟,但根本原因不是爬虫,也不是查询,是配置变更流程漏洞。”
    会议室安静了。
    “什么配置变更?”老赵问。
    “上周五晚上,数据库组做了一次参数优化,调整了‘binlog_format’从‘ROW’改为‘MIXED’,目的是提升同步效率。但这次变更只在主库执行,从库漏了。导致主从的复制格式不一致,在特定查询模式(比如全表扫描)下,同步会变慢。平时负载低,不明显。昨晚爬虫触发了几次全表扫描,放大了这个问题。”
    老赵脸色变了:“你…你怎么知道?”
    “我看了变更记录。”贝西克说,“上周五晚上十一点二十三分,有数据库变更工单,执行人是你。变更理由是‘提升同步性能’。但工单状态是‘部分完成’,备注写着‘从库明天补’。但第二天没人跟进。”
    “你怎么能看到变更记录?”李总问,“那是DBA权限。”
    “我有只读权限,上周申请的,为了排查另一个问题。”贝西克说,“刚才会议期间,我查了日志,确认了这一点。”
    老赵额头冒汗:“那个…从库我后来补了,周一上午补的。”
    “但从周五晚上到周一上午,有六十个小时窗口期,主从不一致。”贝西克说,“故障发生在这个窗口期内。”
    小陈看向老赵:“老赵,真有这事?”
    老赵低头,不说话。
    王总盯着他:“是不是?”
    “是…”老赵声音很小,“但我以为不影响…平时都正常…”
    “你以为?”王总提高声音,“三千万交易延迟,用户投诉,公司形象受损,就因为你‘以为’?”
    “王总,我…”老赵想辩解,但说不出话。
    贝西克继续说:“另外,我观察到另一个问题。运维在02:45重启从库,但重启前没有做‘stopslave’,导致重启后同步位置错乱,又花了十三分钟自动恢复。如果先stopslave,再重启,恢复时间可以缩短到五分钟内。”
    运维负责人猛地抬头:“你怎么知道?”
    “监控显示从库重启后,’Seconds_Behind_Master’从120秒变成NULL,然后花了780秒才恢复到0秒。这是典型的未停同步就重启的特征。”贝西克说,“如果你先停了同步,应该显示从负数开始恢复,不会出
章节报错(免登陆)
下载APP,无广告、完整阅读
验证码: 提交关闭