返回第十四章 只是一场梦  完了,高冷校花竟也重生了!首页

关灯 护眼     字体:

上一页 目录 下一章

,有时候又有值。”

    “然后页面那边就偶发性崩。”

    “测试说复现不了,但产品说用户已经反馈好几次了。”

    陆行站起身。

    刚一起身,他膝盖还微微僵了一下,发出了清脆的响声。

    这身体……

    果然是被岁月摧残过的版本啊。

    他抓了抓头发,走到周明旁边坐下。

    屏幕上开着IDE,旁边还有一堆日志窗口。

    陆行看着那段代码,混乱的思绪渐渐被强行拉回现实。

    他快速扫了一遍调用链。

    “你这里是先查缓存?”

    周明赶紧点头。

    “对。”

    “缓存没有再查数据库,然后重新写回缓存。”

    陆行指了指其中一段。

    “那你有没有想过,缓存里存的不是没有数据,而是存了一个空结果?”

    周明一愣。

    “啊?”

    陆行滑动鼠标,拉到下面。

    “你看这里。”

    “你为了防止缓存穿透,在查不到数据的时候,把空对象也写进缓存了。”

    “这思路没错,但问题是,你这里拼写出错了。”

    周明凑近看了一眼,然后整个人僵住。

    陆行继续道:

    “正常查询用的是……”

    “你写空缓存的时候,用的是……”

    “总之,多了个‘s’。”

    周明:“……”

    办公室里沉默了两秒。

    周明的表情从崩溃变成迷茫,又从迷茫变成震惊。

    最后变成想当场埋了自己的羞耻。

    “我靠。”

    他捂住脸。

    “就这?”

    陆行面无表情。

    “很多在线事故,都是从‘就这’开始的。”

    周明痛苦道:

    “可为什么测试环境没问题?”

    陆行点开配置文档。

    “测试环境缓存过期时间只有一分钟。”

    “预发环境为了仿真在线,设成了两小时。”

    “你测试的时候刚好没碰上,预发那边只要写入了错误key,后面就出现不稳定。”

    周明恍然大悟。

    “所以不是接口不稳定,是我写进去的空缓存让逻辑分叉了?”

    “差不多。”

    陆行把键盘推给他。

    “改key,然后补一条单元测试。”

    “顺便把缓存key常量抽出来,不要到处手写字符串。”

    周明连连点头。

    “明白明白!”

    他手忙脚乱地开始改。

    陆行站在旁边看了一会儿,又补充道:

    “还有这里……”

    周明一边改一边点头。

    “懂了。”

    陆行看着他敲代码,语气放缓了一些。

    “排bug的时候别光看表面。”

    “日志不是让你盯着发呆的,是让你顺着链路往回找。”

    周明苦着脸。

    “组长,我也想顺着链路找。”

    “但我一看到报错就脑子空白。”

    陆行看了他一眼。

    “那就先别慌呗。”

    “bug又不会因为你慌就自己修好。”

    周明沉默两秒。

    然后小声道:

    “嘿嘿,但它会因为你来就修好。”

    陆行:“……”

    这话听着好象是在夸他。

    但为什么莫名有种压榨组长的味道?

『加入书签,方便阅读』

上一页 目录 下一章