深夜十一点零七分,手机在枕边震了起来。
那震动和闹钟完全不一样。闹钟温吞吞的,虽然也是有节奏,但是挺慢。可这电话不是,搞得像催命似的,一响接一响,非要你接。
来电显示:陈志远。
发小,也是他现在名义上的老板。
「默子,睡了没?」那头的声音压着慌,尾音里夹着机房特有的低噪,「政务云集群又出状况了,告警刷了一整屏,小王他们搞不定,甲方在群里点名要人……你能过来一趟吗?」
林默睁开眼。
天花板上那圈水渍,手机冷光照上去,泛着旧疤一样的黄。边缘洇开的形状,是有人泼了隔夜茶又忘了擦。这圈水渍他看过无数遍了,一直没在意。就像他这半年来,很多事情都懒得在意。
半年前,他还坐在自己公司的独立办公室里。落地窗,手冲咖啡,三十几号人喊他林总。
散伙那天,他站在会议桌前签完最后一份文档。债清了,人也空了。签字笔划过纸面那一声,他记得自己心跳慢了半拍——身体比脑子先认了「到这儿了」。
如今寄居在发小的政府外包公司里,当「救火队员」。月薪付掉房租,勉强够糊口。
「十分钟。」嗓子带着刚醒的哑。
他挂了电话,把那件洗得发白的连帽衫从椅背上拽下来套上。布料贴着皮肤,凉得他缩了一下。腋下还留着半夜的潮气。桌上堆着两个方便面桶,一台没合上的笔记本。屏保停在老公司的团建合影上,画面里他自己被裁掉了,只剩一群熟悉却再也叫不出名字的脸。
他没多看,拎起电脑包出了门。
防盗门在身后「咔哒」一声落锁。楼道感应灯惨白地亮了一下,又暗了。
深夜的云州凉得通透。风从巷口灌进来,带着下水道的味,还有夜市收摊后残留的油腥气,刮得脸侧生疼。
他骑那辆二手电瓶车。车灯在空旷的街道上划出一圈昏黄的光。红灯亮着,路口空无一人。监控探头上的小红灯一闪一闪,比交警还敬业。
十分钟后,市政务服务中心附楼。
车锁在锈迹斑斑的栏杆上。车撑磕在水泥地上,一声闷响。
机房在地下。推开门,冷风裹着静电和空调的干凉扑面而来,激得他鼻黏膜一缩。紧接着是服务器数组的低频嗡鸣——那不是简单的噪音,是沉进骨头里的、持续的震颤,频率低得让人后槽牙发酸。
走廊灯只隔一盏亮着。惨白的光打在金属机柜棱角上,映出一排排红绿交错的指示灯。地面是三聚氰胺防静电地板,脚步声被吸掉大半。墙角那台除湿机嗡嗡转着,接水盘里浅浅一层积水映着灯光。
驻场工位区亮着两盏台灯。昏黄的光圈出一小片暖意。运维组长王海涛正皱着眉盯屏幕。听见门响,眼皮都没擡,拿下巴朝那排红成一片的告警面板努了努嘴。
「总算来了。」嘴角一撇,「群里都喊你『救火专业户』了。今天这火不小,你搞得定吗?」
林默没接话。
把电脑包放下,拉过空椅子坐下。手指搭上键盘,先扫了一遍屏幕上的信息面板。椅面冰凉,他挪了挪身子,让牛仔裤多隔一层。屏幕亮起来的瞬间,他眯了眯眼,等瞳孔适应那片冷蓝。
政务云集群的崩溃很不正常。
不是常见的节点死机——那种最好办,换台机器切流量就行。也不是带宽打满——监控上的出入流量平稳得像一条死线。
问题出在内核调度层。是一种「缓慢失序」。像有人沿着河堤悄悄掏了一个蚂蚁大的口子,水一时半刻漫不出来,流向却已经偏了。
这套市级政务云刚完成去IOE改造。底层从进口数据库和小型机换成了国产分布式数据库和国产CPU,运维逻辑跟早年那套进口栈完全不同。迁移时为了不伤业务,兼容层里留了不少「老协议」接口。进口栈崩是硬件硬伤,国产底座的慢崩,错就错在这些没对齐的接缝里。
当年签字验收的时候,红头文档写得漂亮:「全栈自主可控,命运攥在自己手里。」大概没人想到,真正的异物恰恰落在了这片自家地基里。
甲方对接人在群里跳脚,@全体一句接一句:「进度呢?」「影响面多大?」「明天早会要汇报的。」
王海涛回复翻来覆去都是「在查、在查、马上好」,间隔越来越长。是真没招了。
林默扫了一眼群,没出声。见过太多这种场面——越急越不能慌。一慌,手就先乱了。
他把背包里的笔记本拿出来接上,调出底层日志流。干了十来年软硬件和系统集成,从驱动到架构都摸过,什么稀奇古怪的故障没见过。这种「慢刀子割肉」的毛病,最忌讳的就是瞎重启。一重启,现场就没了,内存里的失序状态被清空,留下的只有「莫名其妙好了」的假象,锅还得自己扛。
刚入这行那年他也犯过一次。被甲方指着鼻子问了半小时。从此记住了:慢崩不重启,先留现场。
「你先别乱动。」王海涛抱着手,身子往椅背一靠,一副「我看着你搞」的架势。眼睛却还盯着自己那块屏,随时准备撇清干系。「我看就是缓存爆了,重启一下集群保准好。」
