跳转至

第二十二章 · P0

十月五日,星期一,上午九点。

国庆假期刚结束,工位区人不多。连接池使用率百分之四十一,比放假前高了六个点。

放假七天,没有人调整过配置。这个数只能是流量涨了。

他打开独立消息服务设计文档,看了一遍,没有改,关掉。

他打开记事本,看到最后一行:十月二日。我不知道要不要往后推一周。

这一行他没有删。

茶水间没有人。窗外天空是蓝的,没有云。蒋辉那句话是九月三十号下午说的,用的是「你考虑一下」,不是「你推后一周」。前一种说法不需要他负责。

推后一周,规则引擎调度服务的接入就要等到十月第三周。张磊那边的排期已经报上去了。这件事蒋辉知道,他没有提。

下午两点,他收到易文的消息。

「消息服务什么时候上线。」

「十月第二周。」

「资源申请了吗。」

「申请了。两台服务器,一个消息队列 topic,一个数据库表。」

「批了吗。」

「还没。」

「催一下。」

「好。」

陈稳打开资源申请系统,看了一眼状态:待审批。审批人是纪衡。他关掉,没有催。

下午四点,他收到纪衡的消息。

「资源申请我看到了。消息服务跟规则引擎调度服务,共用同一个资源池。你确认过资源够吗。」

陈稳想了想,打字:「规则引擎调度服务当前使用率多少。」

「我不知道。你问一下蒋辉。」

陈稳没有马上问。他打开记事本,写一行:十月五日。纪衡说资源池共用。问蒋辉。

他看了一遍,保存,关掉。

十月六日,星期二,上午九点。

陈稳到一号楼,看到蒋辉已经在工位上了。他走过去,站在蒋辉工位旁边。蒋辉抬起头,看着他。

「资源池的事,纪总问我了。」陈稳说。

「他问我了。」蒋辉说。

「你那个规则引擎调度服务,当前资源使用率是多少。」

「百分之四十左右。峰值百分之六十。」

四十和六十之间差二十个点。消息服务要用掉十二个点。

「你那个消息服务,需要多少资源。」蒋辉说。

「不算多。两台服务器,一个 topic,一个表。」

「消息队列的 topic 呢。你用的哪个 topic。」

「新建的。跟规则引擎调度服务的 topic 不冲突。」

蒋辉在键盘上敲了两下,没有敲回车。

「你那个方案,如果推后一周,有什么影响。」蒋辉说。

「时间表要改。纪衡那边要重新确认。」

「就一周。」

「我知道。」

「你考虑一下。」蒋辉说完,低下头,继续看屏幕。

陈稳回到工位,记事本上多了一行:十月六日。蒋辉说规则引擎调度服务使用率百分之四十。峰值百分之六十。他又问了一次要不要推后一周。

「又」这个字他写了才发现,这是第三次。

他看了一遍,保存,关掉。

下午三点,他收到纪衡的消息。

「你跟蒋辉确认过了吗。」

「确认了。规则引擎调度服务使用率百分之四十,峰值百分之六十。」

「够吗。」

「够。」

「资源申请我批了。」

陈稳打开资源申请系统,状态变成了已审批。他看了一会儿,关掉,打开记事本,写一行:十月六日。纪衡批了资源申请。消息服务十月第二周上线。

他看了一遍,保存,关掉。

十月八日,星期四,上午九点。

陈稳到一号楼,工位区人齐了,所有人都回来了。他坐下来,打开电脑,打开监控大盘,结算成功率百分之九十九点九九,连接池使用率百分之四十三。

他打开消息服务代码,看了一遍,没有改,关掉。

下午两点,他收到运维的消息。

「消息服务 topic 创建完成。两台服务器已分配。IP:10.16.3.21,10.16.3.22。」

陈稳回复:「收到。」

他打开部署脚本,看了一遍,没有改,关掉。

十月九日,星期五,上午九点。

陈稳到一号楼,工位区没有人,他来得最早。他坐下来,打开电脑,打开消息服务代码,看了一遍,没有改,关掉。他打开部署脚本,执行。

他等了五分钟,部署完成。

他打开日志,看了一遍,消息服务启动正常。他打开监控大盘,消息服务运行正常,没有告警。

他打开记事本,写一行:十月九日。消息服务上线。运行正常。

他看了一遍,保存,关掉。

下午四点,他收到纪衡的消息。

「消息服务上线了?」

「上线了。」

「运行正常吗。」

「正常。没有告警。」

「好。」

陈稳放下手机,打开记事本,写一行:十月九日。消息服务上线。纪衡问了。没有告警。

他看了一遍,保存,关掉。

十月十二日,星期一,凌晨两点。

手机响了。

他睁开眼睛,拿起手机,屏幕亮着,显示着:值班告警。结算系统。他坐起来,揉了揉眼睛,打开电脑。

他打开监控大盘,结算成功率百分之九十九点九九。他打开告警详情,看了一遍。告警来源:规则引擎调度服务。告警内容:资源池使用率超过阈值百分之九十。当前值百分之九十四。

他打开规则引擎调度服务的监控页面,资源池使用率百分之九十四,还在上升。他打开消息服务的监控页面,消息服务运行正常,资源使用率百分之十二。

他打开规则引擎调度服务的日志,看了一遍。日志显示,十月十二日零点开始,规则引擎调度服务的请求量突然上升,从每分钟三千条上升到每分钟一万两千条。他打开消息服务的日志,消息服务运行正常,请求量稳定,每分钟四千条左右。

他打开规则引擎调度服务的配置文件,找到了一行。

rule.engine.settle.topic=settle.message.topic

他打开消息服务的配置文件,找到了一行。

message.settle.topic=settle.message.topic

两个服务的 topic 配置,指向了同一个 topic。

他放下手机,看着屏幕,没有动。

他重新看了一遍。规则引擎调度服务的 topic 配置,跟消息服务的 topic 配置,指向了同一个 topic。规则引擎调度服务从十月十二日零点开始,收到了本应发给消息服务的消息。它没有处理能力,所以消息积压,资源池使用率上升。

他打开规则引擎调度服务的 MR 历史,找到最近一次提交,看了一遍。commit message:feat: 规则引擎调度服务——增加 topic 配置项,支持动态切换。提交时间:十月十一日二十三点四十七分。提交人:蒋辉。

MR 没有 reviewer,蒋辉自己合入了。

他打开监控大盘,资源池使用率百分之九十六。

他打开记事本,写一行:十月十二日,凌晨两点零七分。蒋辉在十月十一日二十三点四十七分提交 MR,增加 topic 配置项,指向消息服务的 topic。MR 无 reviewer,自行合入。资源池使用率百分之九十六。

他看了一遍,保存,关掉。

他打开监控大盘,资源池使用率百分之九十八。结算成功率百分之九十九点九八,在下降。

凌晨两点,窗外是黑的,对面楼的灯亮着,几扇窗,零星的。记事本上他写了三个字:怎么办。

他看了一遍,没有删,继续写。

方案一:修改规则引擎调度服务的配置文件,删除 topic 配置项,重启示例。方案二:消息服务暂时停用,释放资源池。方案三:扩容资源池。

他选方案一。

他打开规则引擎调度服务的配置文件,删掉 rule.engine.settle.topic=settle.message.topic,保存,提交 MR,自己合入,重启规则引擎调度服务。

他等了五分钟,监控大盘显示,资源池使用率从百分之九十八降到百分之七十六,还在下降。结算成功率从百分之九十九点九八升到百分之九十九点九九。

他打开记事本,写一行:十月十二日,凌晨两点二十分。修改规则引擎调度服务配置文件,删除 topic 配置项,重启示例。资源池使用率从百分之九十八降到百分之七十六,结算成功率恢复。

他看了一遍,保存,关掉。

他打开手机,看到值班群里已经有消息了。蒋辉发的。

「资源池使用率告警,谁在处理。」

陈稳打字:「我。」

「原因是什么。」

「配置错误。规则引擎调度服务的 topic 配置指向了消息服务的 topic。」

「谁配置的。」

MR 提交人那一栏写着蒋辉。这三个字他打进输入框,删了。

「是我配置的。」蒋辉说。

这条消息在群里,二十三个人能看到。

「现在恢复了吗。」

「恢复了。删除了错误配置项,重启了服务。」

「好。」

陈稳放下手机,看着屏幕,没有动。

他打开记事本,写一行:十月十二日,凌晨两点三十分。蒋辉说,是我配置的。

他看了一遍,保存,关掉。

他拿起手机,看到纪衡的消息。

「什么情况。」

陈稳打字:「规则引擎调度服务配置错误,topic 指向消息服务的 topic,消息积压导致资源池打满。已恢复。」

「谁发现的。」

「我。」

「谁修的。」

「我。」

「好。」

陈稳放下手机,看着屏幕,没有动。他看了一眼时间,从告警到恢复,二十五分钟。三十分钟以内。

他打开记事本,写一行:十月十二日,凌晨两点三十五分。从告警到恢复二十五分钟。三十分钟以内。

他看了一遍,保存,关掉。

资源池使用率百分之五十八,结算成功率百分之九十九点九九。凌晨两点三十五分,窗外是黑的。

记事本上多了一行:十月十二日,凌晨。对面那扇窗的灯,还是黑的。

他看了一遍,没有删,保存,关掉。

他打开代码,继续写对账模块重构的逻辑。

凌晨三点,他收到易文的消息。

「听说你处理了一个事故。」

「嗯。」

「严重吗。」

「P0。资源池被打满了。已经恢复了。」

「谁的问题。」

蒋辉的名字他没有打。

「蒋辉?」

易文不需要他回答就猜到了。她甚至不在结算组。

「你写复盘了吗。」

「还没。」

「写。明天早上发。不要等别人问你。」

「好。」

「你那个消息服务受影响了吗。」

「没有。消息服务正常。资源池是共用的,规则引擎调度服务那边消息积压,把资源池打满了。消息服务没有受影响,因为消息服务处理速度快,没有积压。」

「所以不是你的问题。」

「不是。」

「但你在现场。」

「嗯。」

「你做了什么。」

「删了错误配置项,重启了服务。」

「还有呢。」

「没有了。」

「你写了复盘吗。」

「还没有。」

「写。写清楚。你做了什么,为什么这样做,效果怎么样。不要写别人的问题,写你自己的动作。」

「好。」

「你那个消息服务,上线了,正常运行,没有受影响。这是你的成绩。你写在复盘里。」

陈稳看着屏幕,没有回复。

「写。」

「好。」

陈稳放下手机,打开记事本,写一行:十月十二日,凌晨三点。易文说写复盘。写自己的动作,不写别人的问题。

他看了一遍,保存,关掉。

他打开文档,开始写复盘。

他写:十月十二日凌晨两点,值班告警触发,规则引擎调度服务资源池使用率超过阈值百分之九十。排查发现,该服务配置文件中的 topic 配置项指向了消息服务的 topic,导致消息积压,资源池打满。修复方案:删除错误配置项,重启服务。从告警到恢复共用时二十五分钟。消息服务运行正常,未受影响。

他看了一遍,没有改,保存,关掉。

他打开记事本,写一行:十月十二日,凌晨三点二十分。复盘写完了。四百字。写了动作,没写别人的问题。

他看了一遍,保存,关掉。

他打开监控大盘,资源池使用率百分之四十三,结算成功率百分之九十九点九九。他看了一会儿,没有关。他坐在工位上,看着屏幕上的绿色数字,平稳,没有波动。

手机响了。

他拿起来,看了一眼。纪衡发的。

「复盘写好了吗。」

「写好了。」

「发我。」

陈稳把复盘发过去。

纪衡的回复在五分钟后:「收到。」

陈稳放下手机,看着屏幕,没有动。

他打开记事本,写一行:十月十二日,凌晨三点四十分。复盘发了。纪衡说收到。

他看了一遍,保存,关掉。

资源池使用率百分之三十九,结算成功率百分之九十九点九九。凌晨三点四十分,窗外没有星星,没有月亮。

他没有打开电脑。墙上白板写着值班排班表,他的名字,陈稳,下周一,二十四小时。这是本月第二次。

手机响了。蒋辉发的。

「谢了。」

这两个字发过来的时间是凌晨三点四十七分。蒋辉这个点还没睡。

「我不是在谢你帮我处理了事故。我是在谢你没有在群里说是我配置的。」

群里那条「谁配置的」,陈稳确实没有回。他当时打了三个字,删了。

「我刚才在群里说是我配置的,是怕纪总查出来。你不用说,我自己说。你帮了我一次。」

「你帮了我一次」——蒋辉用的是「帮」。陈稳什么都没做,只是没说。这也算帮。

「你那个消息服务,不需要推后了。你按你的计划走。」

推后一周这件事,从九月三十号问到十月六号,一共三次。这一次不用回答了。

记事本上多了一行:十月十二日,凌晨。蒋辉说,谢了。他说,我不是在谢你帮我处理了事故。我是在谢你没有在群里说是我配置的。他说,你那个消息服务,不需要推后了。

这一行他没有写自己删掉的那三个字。

资源池使用率百分之三十六,结算成功率百分之九十九点九九。

手机响了。

他拿起来,看了一眼。何晚发的。

「你还没睡?」

「值班。处理了一个事故。」

「严重吗。」

「不严重。已经恢复了。」

「你什么时候回来。」

「天亮。」

「我给你煮粥。」

陈稳看着屏幕,没有说话。

「不用。」他打字。

「你胃不好。我给你煮粥。你回来的时候,正好可以吃。」

陈稳看着屏幕,没有说话。

「好。」

他放下手机,看着屏幕上的绿色数字,百分之九十九点九九,平稳,没有波动。他看了一会儿,没有关。

他站起来,走到窗边,看着外面。凌晨四点,天快亮了。对面楼的灯,亮着几扇,零星的。他看了一会儿,没有走回工位。

他站在窗边,看着外面,没有动。

天边有一道光,很淡,很浅,慢慢地亮起来。

他看了很久。

然后他走回工位,坐下来,打开代码,继续写对账模块重构的逻辑。


← 第二十一章 茶水间 · 目录 · 第二十三章 谈话 →