键盘上的指印还没干透。
程文博的声音从背后砸下来,技术部原地解散,不用交接。
保安的皮鞋已经踩在我工位旁边,纸箱塞到脚边。
屏幕上并发曲线正往上蹿,七万三千个请求涌进来。
妻子卢菊香的电话在震,父亲董仁勇的住院费催缴单在口袋里,儿子董宇轩模拟考成绩刚出。
我摸到键盘底下那个自己写的紧急熔断脚本,手指停了三秒。
按下去,全城订单停摆。
不按,外包团队会把数据拖进深渊。
我按了。
屏幕一黑,手机开始疯响。
没人知道,这只是开始。
01
早上六点四十分,我端着搪瓷杯站在机房门口,杯里是昨晚剩的半杯凉白开。
走廊尽头的灯管闪了两下,发出滋滋的电流声。
我掏出钥匙,打开技术部铁门,一股混合着旧地毯和机器散热的气味扑过来。
三排机柜嗡嗡作响,绿灯像心跳一样匀速闪烁。
我绕着机柜走了一圈,确认每台服务器的负载都在安全线以内。
屏幕上跳动的数字稳稳停在四万两千左右,这是凌晨的低谷时段,再过三个小时,早高峰一来,这个数字会翻一倍。
我坐到工位上,打开调度系统后台。
这套代码是我十年前从第一行开始写的,那时候云菜篮还只是城东一个三十平米的小仓库,林卫国带着七八个人,用三轮车给附近小区送菜。
现在仓库变成了三个冷链中心,骑手三百多个,每天订单量在四十万单上下。
生鲜这东西,订单来得猛,去得也快。
早上七点到九点,中午十一点到一点,傍晚五点到七点,三个高峰时段,系统必须扛住每秒七万级并发。
七万,不是个小数目。
每次促销日,这个数字还会往上蹿一蹿。
“董哥。”
蒋志强站在门口,手里拎着两袋包子。他今年二十八,跟了我五年,运维上的事基本能独当一面。他把包子放在我桌上,自己拿了一个往嘴里塞。
“昨晚那台缓存服务器我重启了,内存泄漏,日志里报了三次。”
“换过了?”
“换了备机。旧的那台我拆下来放库房了,等新内存条到了再装。”
我点点头,咬了口包子。白菜粉丝馅的,有点凉,皮硬了。
“我爸今天住院。”我把包子咽下去,“下午我得去趟医院,你有事给我打电话。”
“叔怎么了?”
“老毛病,肺上的事。医生说要住几天观察。”
蒋志强没再多问,坐回自己工位。
这孩子话少,但做事踏实。
系统里有个风吹草动,他比监控报警还先知道。
我有时候想,这套系统要真交出去,蒋志强是最舍不得的一个。
九点出头,手机响了。卢菊香打来的。
“宇轩模拟考成绩出来了,比上次掉了二十多分。”她的声音压得很低,像是在超市货架后面偷偷打的,“班主任说这个成绩上不了一本。”
“晚上回去再说。”
“你哪天不是晚上回去再说?你爸住院要钱,宇轩补习班也要钱,你那个班加得有什么用?”
我没接话,把电话挂了。
屏幕上的并发曲线开始往上爬,五万三,五万八。
我盯着那条线,右手不自觉地攥紧了鼠标。
这套系统里埋着太多只有我知道的东西,每一行代码都是亲手敲进去的,每一个参数都是熬夜调出来的。
林卫国当年跟我说,景天,这东西就是云菜篮的命。
我说我知道。
林卫国已经两个月没来公司了。
他肝上的毛病比董仁勇还重,医生说必须静养,董事会的事都交给了苏永孝。
苏永孝是后来进来的资本方,占股不小,说话分量重。
上个月他派了个总经理过来,叫程文博,三十八岁,西装笔挺,说话喜欢用手指点桌面。
第一次开全体会,程文博站在白板前面,拿马克笔画了个大叉。
“技术部目前的人力成本,占了公司总成本的百分之三十一。”他把那个叉描粗,“这个数字,必须降下来。”
我坐在下面,没吭声。技术部一共十四个人,要维护三套系统,一个数据库集群,六个微服务模块。十四个人,干的是外面四十个人的活。
散会后,蒋志强跟着我进了机房。
“程总什么意思?”
“降本增效。”我打开机柜,把松了的网线重新插紧,“新官上任,总要烧几把火。”
“烧到咱们头上怎么办?”
“烧到头上再说。”
我嘴上这么说,心里清楚,这把火迟早要烧过来。只是没想到来得这么快,这么彻底。
中午吃饭的时候,贾玉瑾来找我。她是人力资源总监,四十岁,做事利落,说话滴水不漏。她站在我工位旁边,手里拿着一份文件。
“董总监,程总让你下午去他办公室一趟。”
“什么事?”
“我不太清楚,你去了就知道了。”
她转身走了。
文件留在我桌上,我翻开看了一眼,是一份组织架构调整方案。
技术部被划了一道红线,旁边写着“优化建议”四个字。
我把文件合上,推到桌角。
屏幕上,午高峰的并发量冲到了六万九,离七万只差一千。
我调出压力测试报告,上一次完整测试还是三个月前,那时候林卫国还在,批了整整两天的测试窗口。
现在程文博把测试预算砍了,下次促销日定在十五号,还有十二天。
我拿起那份组织架构调整方案,又翻了一遍。
外包团队一栏里,写着“家明科技”四个字。
法人代表程家明。
我心里咯噔一下,程文博,程家明,这两个名字摆在一起,太巧了。
蒋志强端着水杯经过,看了一眼我手里的文件。
“家明科技,就是程总上次开会提的那个外包?”
“嗯。”
“他们报价比我们人力成本还高。”
我没说话,把文件扔进了抽屉。
窗外天阴着,云层压得很低,像是要下雨。
手机又震了,董仁勇的主治医生发来短信,说住院押金还差八千。
我盯着那条短信看了几秒,然后把手机翻扣在桌上。
屏幕上的并发曲线还在爬,六万九千五,六万九千八。
我伸手把警报阈值往上调了两千。
调完又觉得不妥,想改回去,手指在键盘上悬了半天,最后还是没动。
02
下午两点,我站在程文博办公室门口。门开着,他坐在办公桌后面,面前摊着一堆报表。贾玉瑾坐在旁边的沙发上,膝盖上放着笔记本电脑。
“进来,关门。”程文博没抬头,手指在计算器上敲得噼啪响。
我走进去,在他对面坐下。
他的办公室不大,但收拾得很干净,墙上挂着一幅字,写的是“降本增效”四个楷体。
我看了一眼那幅字,觉得挂得有点歪。
“董总监,公司现在的情况你也清楚。”程文博终于抬起头,手指点着桌面,“苏总那边给了压力,三个月内要扭亏。技术部这块,人力成本太高了。”
“系统要有人维护。”
“我知道。所以我引进了家明科技,他们的报价比你整个团队的年薪低百分之四十。”他翻开一份合同,推到我面前,“从下周一开始,技术部的工作逐步移交外包。你配合一下。”
“逐步移交?多长时间?”
“半个月。”
我盯着合同上的数字,家明科技的报价确实低,低得不太正常。
十四个人干一年的活,外包团队报价只有我们年薪的四成,还要包括硬件维护和紧急响应。
这笔账怎么算都算不过来。
“程总,这套系统不是随便换个人就能接的。底层逻辑、应急预案、历史数据,光是交接文档就有几百页。”
“所以我才说‘逐步移交’嘛。”程文博笑了一下,嘴角往上提,眼睛没动,“你是技术总监,带个头。把核心权限先交出来。”
“交多少?”
“服务器权限、数据库权限、调度系统后台。先交这三个。”
我沉默了。
服务器权限交出去,就等于把整个系统的命门交出去。
数据库权限交出去,所有订单数据、用户信息、财务流水全部裸奔。
调度系统后台交出去,骑手路线、冷链温控、库存周转全部失控。
“程总,这三样交出去,系统等于不设防。”
“家明科技是专业团队,有安全资质。”程文博的语气冷下来,“董总监,这不是商量。这是通知。”
贾玉瑾在旁边轻轻咳了一声,把笔记本电脑转过来,屏幕上是一份权限移交确认书。
“董总监,你签个字就行。后续的技术对接,家明那边会派人来跟你学。”
我拿起笔,笔尖悬在纸面上方。
窗外开始下雨了,雨点打在玻璃上,噼里啪啦响成一片。
我想起林卫国两个月前在医院跟我说的最后一句话。
他说景天,系统交给你,我放心。
他说这话的时候,手背上插着留置针,脸色蜡黄。
我签了字。
回到工位,蒋志强凑过来问怎么样。我说签了,下周开始移交。他愣了几秒,然后低声骂了一句。
“家明科技,程家明,这他妈不就是程文博自己家的公司吗?”
“别乱说。”
“我没乱说。我查了工商信息,程家明是程文博的堂弟。”
我盯着屏幕,没接话。
其实我早就查过了。
程家明,程文博,同一个爷爷,同一个姓。
家明科技的注册地址在城西一个写字楼里,我去看过,那间办公室锁着门,前台积了一层灰。
这样的公司,拿什么来接系统?
晚上七点,我去了医院。
董仁勇躺在病床上,鼻子里插着氧气管,眼睛半睁着看电视。
电视里在播本地新闻,说云菜篮最近订单量增长迅速,用户突破两百万。
董仁勇看见我,把电视关了。
“忙不忙?”
“还行。”
“忙就别来了。你妈在这儿呢。”
卢秀莲从水房回来,手里端着盆热水。她看了我一眼,把盆放在床头柜上。
“吃饭了没有?”
“吃了。”
“又糊弄。”她拧了毛巾,给董仁勇擦脸,“宇轩今天打电话了,说模拟考没考好,不敢跟你说。”
“我知道。”
“你知道有什么用?你倒是管管啊。”
我没说话,从口袋里掏出那张催缴单,放在床头柜上。卢秀莲拿起来看了一眼,折好,塞进自己兜里。
“我明天去交。”
“钱够不够?”
“够。”
她嘴上说够,手却在兜里攥紧了。
我看见了,没拆穿。
从医院出来,雨已经停了,地上湿漉漉的,路灯照在水洼上,亮晃晃一片。
手机里蒋志强发来一条消息,说家明科技的人明天上午来对接,让我准备一下。
我回了个“好”字,然后把手机揣回兜里。
走了几步,又掏出来,打开调度系统后台。
屏幕上,夜间的并发量已经降到了三万左右,曲线平缓,像一条安静的河。
我盯着那条线看了很久,然后退出来,关掉手机。
回到家已经十点多,卢菊香坐在客厅里算账,本子上密密麻麻写着数字。
她没抬头,只是说了句“回来了”。
我嗯了一声,进了卧室。
董宇轩房间的灯还亮着,门缝底下透出一条光。
我抬手想敲门,手停在半空,又放下了。
03
第二天上午九点,家明科技来了三个人。
领头的是个三十出头的男人,姓黄,戴着金丝眼镜,说话带着南方口音。
他递给我一张名片,上面印着“技术总监黄志远”。
我接过名片看了一眼,放进抽屉。
“董总监,程总让我们先熟悉一下服务器架构。”
“服务器在机房,我带你们去。”
我领着他们进了机房。
黄志远站在机柜前面,抬头看了看,然后掏出手机拍了张照。
这个动作让我心里一紧,但没说什么。
蒋志强站在门口,抱着胳膊,脸色不太好。
“这边是三排机柜,主数据库在中间那排,缓存集群在左边。”我指给他们看,“所有服务器都是双电源,双网卡,冗余配置。”
“负载均衡怎么做的?”黄志远问。
“LVS加Nginx,四层和七层都有。”
“DNS轮询呢?”
“没用。生鲜订单对一致性要求高,DNS轮询容易出问题。”
黄志远点点头,又拍了几张照。
他身后的两个人一直在低头记笔记,笔记本上写满了密密麻麻的字。
我注意到其中一个人在看机柜后面的电源线,眼神有些不对。
“电源线有问题吗?”
“没有没有,随便看看。”
他们在机房待了不到一个小时就走了。走之前,黄志远跟我说,明天会带更多人来,做一次全面评估。我说好。他们走后,蒋志强立刻跑进来。
“董哥,那个姓黄的拍了机柜照片,还看了电源。他什么意思?”
“评估嘛。”
“评估用得着看电源线?他们是不是想直接搬机器?”
“别瞎猜。”
我嘴上这么说,心里也在犯嘀咕。
正常的外包对接,第一周应该是看文档、读代码、了解业务流程。
上来就拍机柜、看电源,这不像评估,倒像是踩点。
下午,程文博又把我叫去了办公室。这次贾玉瑾没在,只有他一个人。他靠在椅背上,手里转着一支签字笔。
“家明的人说,系统比他们想象的复杂。移交周期可能要延长。”
“我说过,这套系统不是随便能接的。”
“但也不是接不了。”他把笔放下,身体往前倾,“董总监,我听说你在系统里写了不少自动化脚本?”
我心跳了一下。
“有。运维自动化,日常巡检用的。”
“有没有那种,一键就能把系统关掉的脚本?”
我看着他,没说话。他也看着我,嘴角带着一丝笑,像在开玩笑,又不像。
“程总,这种脚本谁敢写?写出来出了问题谁负责?”
“随便问问。”他往后一靠,摆摆手,“你去忙吧。”
我出了办公室,后背出了一层薄汗。
那个熔断脚本,是我半年前写的。
当时蒋志强发现有人试图从外部注入SQL,虽然被拦住了,但我还是留了个后手。
脚本藏在调度系统的内核模块里,触发条件有两个:一是权限被异常变更,二是核心服务出现不可控的数据污染。
满足条件后,脚本会冻结所有写入操作,切断外部访问通道,然后等待管理员手动解除。
它不是关机,是冻结。
但冻结之后,系统会进入假死状态,从外面看,跟宕机没什么区别。
我写这个脚本的时候,没告诉任何人。
林卫国不知道,蒋志强也不知道。
我只是觉得,这套系统承载的东西太多,万一有一天被人从内部搞垮,我得有个东西能兜底。
04
接下来三天,家明科技的人每天来,每天看。
他们看了数据库结构,看了缓存策略,看了调度算法。
黄志远每次来都笑眯眯的,问东问西,但从来不问核心逻辑。
他手下那两个人倒是很认真,笔记写了厚厚一本。
第四天,韩思颖来找我。她是前端工程师,二十六岁,做事麻利,说话直来直去。她站在我工位旁边,手里拿着手机。
“董哥,你看这个。”
手机屏幕上是一段监控日志。
我接过来看了一眼,是调度系统的性能监控数据。
但数据不对,CPU使用率被改了,原本百分之七十五的峰值被改成了百分之四十五。
内存占用也被调过,从百分之八十二改成了百分之六十。
“什么时候发现的?”
“今天早上。我跑日常巡检的时候觉得不对,对比了一下原始日志,发现被人改过。”
“改了多少条?”
“最近三天的都被改了。”
我把手机还给她,打开自己的电脑。
原始日志我留了一份在本地,加密的。
调出来一对比,果然,家明科技的人动过手脚。
他们把系统负载数据改低了,改到看上去轻松运行的水平。
“董哥,他们为什么改这个?”
“不知道。”
但我知道。
程文博要在促销日之前完成移交,如果系统负载数据显示一切正常,他就有了理由。
你看,系统跑得好好的,你们技术部留着有什么用?
全部裁掉,交给外包,省钱。
下午,徐慧君来找我。她是测试主管,三十二岁,做事严谨,眼里揉不得沙子。她拿着一份测试报告站在我面前。
“董总监,家明那边提交了一个新版本,让我签字通过。”
“你测了吗?”
“测了。订单调度模块有严重漏洞,并发超过五万就会丢单。我打了回去。”
“然后呢?”
“然后程总亲自来找我,让我签。”
“你签了?”
“没签。我说这个版本不能上,上了促销日必崩。”
我看着她,她看着我。徐慧君的眼睛里有火,但火下面藏着怕。她知道不签字的后果,但她还是没签。
“程总怎么说?”
“他说我不签就调岗。”
“你先回去,别签字。”
她走了。
我坐在工位上,盯着屏幕上的代码。
外包团队提交的新版本我看了,订单调度模块确实有漏洞,而且是致命的。
他们在分库分表的时候少加了一个维度,导致跨库查询时数据错乱。
这个漏洞在低并发时看不出来,一旦到了促销日的高并发,系统会直接崩溃。
我拿起电话,打给程文博。
“程总,外包提交的新版本有漏洞,促销日不能用。”
“测试部不是打了回票吗?让她们改。”
“不是改的问题。这个漏洞在架构层面,要重新设计分库策略。”
“那就重新设计。”
“时间来不及。促销日还有八天。”
电话那头沉默了几秒。
“董总监,你是不是不想交接?”
“我是就事论事。”
“行,我知道了。”
电话挂了。我听着忙音,把手机放在桌上。蒋志强走过来,低声说:“董哥,我听说程总让贾玉瑾准备裁员名单了。”
“什么时候的事?”
“今天上午。技术部十四个人,留三个,其余全部裁掉。”
“留哪三个?”
“你,我,还有韩思颖。但韩思颖不肯签字,可能也要走。”
我闭上眼睛,深吸一口气。
窗外的天又阴了,云层比前几天更厚,压得人喘不过气。
机柜里的服务器还在嗡嗡响,绿灯还在闪。
屏幕上,下午的并发量爬到了六万二。
我打开本地加密盘,调出那个熔断脚本的代码。
代码不长,两百多行,每一行都是我亲手敲的。
触发条件、执行逻辑、解除方式,全部写得清清楚楚。
我看了很久,然后把窗口最小化。
05
促销日前三天,程文博召开全体会。
会议室里坐了二十多个人,技术部、运营部、市场部都在。
程文博站在白板前面,手里拿着马克笔,在白板上写了四个大字:降本增效。
“经过与家明科技充分沟通,我们决定对技术部进行优化调整。”他用笔尖点着白板,“技术部保留三人,其余同事的合同,下周一开始协商解除。”
会议室里安静得能听见空调出风的声音。
我坐在最后一排,看着前面那些年轻的后脑勺。
韩思颖坐在第一排,肩膀绷得很紧。
蒋志强在我旁边,手放在膝盖上,攥成了拳头。
“董总监留任,蒋志强留任,韩思颖留任。其余同事,人力资源部会逐一沟通。”
程文博说完,把马克笔往桌上一扔。笔滚了两圈,停在桌沿。
散会后,我回到工位。蒋志强跟着我,一言不发。韩思颖走过来,眼睛红着,但没哭。
“董哥,我不留。”
“为什么?”
“我签了那个版本,但我留了证据。程文博让我签,我说漏洞太大,他说‘你只管签,出了问题我负责’。我录了音。”
她从口袋里掏出手机,晃了晃。
“你打算怎么办?”
“不知道。但我不会签那个版本。”
我坐在椅子上,看着屏幕。
促销日的流量预估报告刚出来,预计峰值会突破七万五。
系统现在的架构,撑到七万就到头了。
外包团队改过的代码,连六万都撑不住。
我拿起电话,打给林卫国。
响了很久,没人接。
又打了一遍,还是没人接。
我放下电话,打开调度系统后台,开始做最后的检查。
数据库连接池、缓存命中率、消息队列堆积量、CDN回源率,一项一项看过去。
每一项都在正常范围内,但我心里清楚,这些数字撑不过三天。
晚上回到家,卢菊香坐在客厅里,面前摊着几张纸。她看见我进来,把纸往我这边推了推。
“宇轩的补习班要续费了,一学期八千。”
“你爸住院的押金今天交了,我找我妈借了五千。”
“你到底有没有在听?”
“在听。”
她站起来,把纸收好,进了卧室。
门关上的声音不大,但听得出来带着气。
我坐在沙发上,没开灯。
客厅里很暗,只有窗外路灯的光透进来,在地板上投下一块灰白色的方块。
手机震了,蒋志强发来消息:家明的人今晚进了机房,说要“提前调试”。
我回:你看着点。
他又发:他们拔了一根网线,我插回去了。
我盯着这条消息,手指在屏幕上悬了几秒。然后我站起来,穿上外套。
“你去哪儿?”卢菊香在卧室里问。
“公司。”
“现在?”
“现在。”
我出了门,骑上电动车。
夜里的风很凉,吹在脸上像细刀子。
路上没什么人,路灯一盏接一盏往后退。
到公司的时候,已经快十一点了。
机房的灯亮着,门虚掩着。
我推门进去,蒋志强站在机柜旁边,脸色铁青。
“他们走了?”
“刚走。拔了主数据库的网线,插到了备用口上。备用口没配冗余,一插上去就断了。”
“断了多久?”
“大概三分钟。我切回来了。”
我走到主数据库机柜前面,检查了一下接口。
网线确实被换过,插痕还是新的。
备用口的配置是旧的,没启用。
家明的人不可能不知道这一点,除非他们是故意的。
“董哥,他们这是在搞破坏。”
我掏出手机,拍了几张照片。
然后打开调度系统后台,调出今晚的操作日志。
日志显示,有人用程文博的账号登录过,修改了数据库路由配置。
修改时间,晚上十点四十七分。
我把日志导出来,存进加密盘。
然后坐在工位上,看着屏幕。
屏幕上,夜间的并发量已经降到了两万左右,曲线平缓。
但我知道,这只是暴风雨前的宁静。
06
促销日当天,我早上五点就到了公司。
天还没亮,机房里的灯管白晃晃的,照得人眼睛发酸。
我打开监控大屏,上面显示着实时流量。
五点半,流量开始爬升。
六点,突破两万。
六点半,突破三万。
七点,程文博来了。他穿着西装,头发梳得整整齐齐,手里端着一杯咖啡。他站在监控大屏前面,看了一会儿。
“今天预估峰值多少?”
“七万五。”
“系统能撑住?”
“原来的架构能撑到七万。现在这套代码,不好说。”
他看了我一眼,没接话。
七点半,家明科技的人来了,黄志远带着五个人,挤在监控室角落里。
蒋志强站在我旁边,手里攥着鼠标。
韩思颖坐在工位上,盯着前端监控。
八点,流量突破五万。八点十五分,五万八。八点二十分,六万二。屏幕上,并发曲线像一根被拉紧的弦,笔直往上蹿。
八点二十五分,报警响了。
“订单调度模块响应时间超过阈值。”
“缓存命中率跌破百分之七十。”
“数据库连接池告警。”
蒋志强的手指在键盘上飞快敲击,调出各个模块的实时状态。
我盯着大屏,看见订单调度模块的响应时间从两百毫秒跳到了八百毫秒,然后是一千五,然后直接红了。
“董哥,调度模块开始丢单了。”
“切备用路由。”
“切了。没用。”
八点三十分,系统崩了。
不是全部崩,是订单调度模块崩了。
前端还在接收订单,但后台处理不过来,订单堆积在消息队列里,越堆越多。
用户下了单,看不到确认,开始重复下单。
重复下单又加重了队列负担,形成雪崩。
程文博站起来,脸色变了。
“怎么回事?”
“调度模块的漏洞发作了。”我看着他,“高并发下跨库查询数据错乱,订单无法正确分配。”
“那就修啊!”
“修不了。要停机改架构。”
“不能停机!现在正是高峰!”
我看着他,没说话。黄志远在旁边掏出手机,走到角落里打电话。蒋志强凑过来,压低声音。
“董哥,队列堆积量已经到十万了。再这样下去,整个系统都会崩。”
我闭上眼睛。
耳边是报警声、键盘声、程文博的骂声、黄志远的电话声。
这些声音混在一起,像一锅煮沸的水。
我睁开眼,打开本地终端,调出那个熔断脚本。
手指放在回车键上。
程文博还在骂,骂技术部无能,骂外包团队废物,骂系统垃圾。
他拿起电话打给苏永孝,说了一堆我听不清的话。
贾玉瑾站在门口,手里拿着一份文件,脸色发白。
我按下回车。
脚本执行。
三秒钟后,所有报警声同时停了。
监控大屏上,并发曲线瞬间归零。
所有绿灯变成红灯。
机房里,服务器的风扇声还在响,但已经没有任何请求进来了。
程文博转过头,看着我。
“你干了什么?”
“紧急熔断。”我把手从键盘上拿开,“系统冻结了。所有写入操作停止,外部访问切断。”
“谁让你干的?!”
“我。”
“你疯了!全城的订单都停了!”
“如果不冻结,数据会彻底崩掉。订单错乱、库存错乱、财务错乱,到时候连恢复都恢复不了。”
程文博的脸涨得通红。他指着我的鼻子,手指在发抖。
“你马上给我恢复!马上!”
“恢复不了。”
“你说什么?”
“熔断脚本一旦触发,需要管理员手动解除。手动解除需要两把钥匙,一把在我这里,一把在林卫国那里。”
程文博愣住了。贾玉瑾在门口倒吸了一口气。黄志远从角落里走出来,脸色铁青。
“你故意的。”
“我按规程操作。”
程文博掏出手机,拨了个号码。电话接通后,他走到一边,压低声音说了几句。然后他走回来,把手机递给我。
“苏总要跟你说话。”
我接过手机。
“董景天。”苏永孝的声音从听筒里传出来,慢悠悠的,像在聊家常,“你知道这一下公司损失多少吗?”
“我告诉你,每停一分钟,损失大概二十万。你打算停多久?”
“系统恢复的条件有三个。第一,程文博公开道歉,承认技术部解散的决策错误。第二,恢复技术部原有团队,家明科技退出。第三,成立独立调查组,调查外包公司的资质和利益输送。”
电话那头沉默了很久。
“你在威胁我?”
“我在提条件。”
“如果我不同意呢?”
“那系统就一直冻结。数据不会丢,但业务也做不了。冷链温控已经报警了,再停下去,仓库里的生鲜会全部变质。医院那边的药品配送也停了,如果出了事,责任不在我。”
又是一阵沉默。然后苏永孝笑了一声。
“行。你等着。”
电话挂了。
我把手机还给程文博。
他接过手机,盯着我看了几秒,然后转身走了。
贾玉瑾跟着他出了门。
黄志远站在角落里,掏出手机不停地打电话,声音越来越急。
蒋志强走过来,站在我旁边。
“董哥,你刚才说的那三个条件,是真的?”
“真的。”
“林董那边有钥匙?”
“没有。熔断脚本只有一把钥匙,在我这里。我骗他们的。”
蒋志强愣了几秒,然后笑了。笑得有点苦。
“那现在怎么办?”
“等。”
我坐回工位,看着监控大屏。
屏幕上,所有指标都是红的,归零的曲线平直地延伸着。
机房里的服务器还在嗡嗡响,但已经没有任何订单进来了。
窗外,天已经大亮,马路上车流不息。
我知道,再过一会儿,用户投诉就会涌进来,媒体也会来,监管部门也会来。
我打开手机,给卢菊香发了条消息:今天可能上新闻,别担心。
她秒回:你又干什么了?
我没回,把手机扣在桌上。
热门跟贴