第16章 第二十二章

第二十二章

第二个月的第三天,系统第一次全链路压力测试。

我们模拟了十个仓库、两百辆车、一千个订单同时写入的场景。测试开始的时候,所有人都围在我的屏幕前,六双眼睛死死盯着那个黑色的终端窗口。赵磊站在我身后,我能感觉到他紧张的呼吸喷在我后脑勺上,热乎乎的,带着刚喝完的速溶咖啡的苦香。

数据开始涌入。吞吐量曲线一路往上爬,从零爬到一千、两千、三千。韩鹏在低声数数,他的唐山口音把“五百”数成“五掰”,平时觉得好笑,此刻没有人笑。

到了五千。

吞吐量曲线突然像被谁踹了一脚,从山顶猛地摔下来。数据库的连接池满了,新的请求全部阻塞,系统响应时间从几十毫秒暴涨到几十秒。屏幕上开始刷出大片的红色错误日志,像一道触目惊心的伤口。

“崩了。”林小雨的声音发颤。

我盯着屏幕,手指停在键盘上。身后一片沉默,能听见隔壁房间有人在打电话,声音模模糊糊地透过隔板渗过来。

赵磊第一个开口:“是不是连接池设太小了?”

“不是。数据库的锁机制有问题。”我打开数据库的执行计划,一行一行地往下翻,“你看这里,这个批量更新的SQL,没有走索引。一千条并发的时候就全表扫描,直接把库锁死了。”

我把SQL语句复制出来,用红色的记号在投影上圈出了问题行。白色屏幕上的黑色代码里,那个鲜红色的圆圈像外科手术前在皮肤上画的切口线。

“重写。”我说,“赵磊,你跟我一起改这个模块。韩鹏,你把所有类似的批量操作都查一遍,看看还有哪些地方没有建索引。林小雨,你重新整理测试用例,明天再跑一轮。张明、何婷,你们两个把物流调度那块的缓存层加上,不要再直接读库。”

没有人推诿,没有人说“这不是我的活”,没有人问“加班费怎么算”。

所有人都动起来。键盘声重新响起,比之前更急、更密、更响。赵磊把椅子往我这边拖了拖,椅子腿在地板革上划出吱的一声长音。他开始跟我讨论锁机制的优化方案,声音低而快,手指在桌上比划着,偶尔抢过我的笔在白板上画图,画歪了用手掌擦掉重画,墨水蹭了一手,他也不在意。

那天我们改到凌晨四点半。

最后一行代码提交的时候,办公室里是那种战斗过后的宁静。林小雨趴在桌上睡着了,脸下垫着一本打开的书,口水洇湿了半页纸。韩鹏仰头靠着椅背,闭着眼睛,嘴里还叼着一根没点着的烟,烟嘴被咬得变了形。张明和何婷瘫在墙角,一人戴一只耳机,在听同一首歌。

赵磊站起来,走到窗边,推开窗。海河的风涌进来,带着凌晨特有的清冷和微微的咸腥。天边已经开始泛白,从深灰变成浅灰,从浅灰变成鱼肚白,一栋栋楼房的轮廓从夜色里慢慢浮现出来,像显影液里的相纸。

他靠着窗台,看着我,忽然笑了。

“你比我还狠。”他说,“我以为我够拼了。”

“那你还觉得我不配当你领导吗?”

他沉默了一会儿,然后走过来,把手伸到我面前。他的手指上全是墨水渍,指甲缝里黑乎乎的,手背上有被键盘磨出来的薄茧。

“带我们赢一次,我就认。”

我握住他的手。

他的手很瘦,但握力大得惊人。

< 上一章 目录 下一章 >
×
命由我作,福自己求
连载中匿名 /