Breacher
2022-02-14T09:16:59+00:00
大致背景如下,给客服开发了一个智能客服,部署运行上线已经一年多了,一直没啥事。
现在的公司我中间离职过一次又回来了,今天从git仓库把以前的项目拉下来,本来是想对比看看自己这段时间有没有进步的
然后我就发现有个bug的修复我没合并到正式版本里[s:ac:惊]
因为做的是智能客服,我用redis(这玩意写在内存里)存储了对话上下文,然后设置了清除上下文的条件,以及过期时间
但是在写完清除条件后忘了设置过期时间了
后面发现之后修复了
但我忘了合并进正式版本[s:ac:惊]
这将会导致,非正常退出的会话(断网、叉掉网页时会话未结束),上下文信息会一直留在内存里。。。。。。
长此以往......[s:a2:大哭]
我远程过去一看果然内存接近爆满了,赶紧请了一波redis缓存,顺便更新了服务[s:a2:大哭]
感谢gunicorn的热更新机制,可以在不影响用户的情况下更新服务[s:a2:大哭]
真等到爆满再发现我估计寄了
[s:pst:偷笑3]寄啥啊,那就提桶跑路啊 跑两次也是跑
你的代码可以跑起来,就不要再动它了。码农基本守则。
怕什么reids满了,根据设定的策略会清除老的.
炸是炸不了的,按你描述淘汰也是清除死key
Reply to [pid=591125404,30788837,1]Reply[/pid] Post by [uid=16045143]runswell[/uid] (2022-02-23 17:26)
今天不改估计再过个几周内存就爆了,那服务器上还有很多别的服务[s:a2:大哭]
你们没有代码门禁?也没有代码评审?测试用例这都覆盖不到?
很难想象一个低级错误能留这么久[s:ac:呆]
Reply to [pid=591126209,30788837,1]Reply[/pid] Post by [uid=62966201]拉屎难忘吃屎人[/uid] (2022-02-23 17:29)
公司的服务器爆过[s:a2:大哭]
这个bug就是那次发现的
做了个压测,然后redis无法读写 flushall也运行不了
[quote][pid=591126341,30788837,1]Reply[/pid] Post by [uid=62622167]年幼的剑魂[/uid] (2022-02-23 17:29):
今天不改估计再过个几周内存就爆了,那服务器上还有很多别的服务[s:a2:大哭][/quote]不是会触发阈值自己释放吗
Reply to [pid=591126754,30788837,1]Reply[/pid] Post by [uid=62324646]勇敢无敌Lilith[/uid] (2022-02-23 17:31)
公司里的小团队,那个项目基本我一个人做的[s:ac:冷]
那个bug我做压测就发现了 解决完忘了合并进正式版本了
正式上线后也没出过问题
生产环境直接更新改了的版本?都不带测试+发布+跟客户申请操作的?
[img]https://img.nga.178.com/attachments/mon_201209/14/-47218_5052bc4cc6331.png[/img]昨天手贱rm -rf /home
赶紧从其他服务器拷过来
[quote][pid=591127793,30788837,1]Reply[/pid] Post by [uid=60208049]Weterlomen[/uid] (2022-02-23 17:35):
[img]https://img.nga.178.com/attachments/mon_201209/14/-47218_5052bc4cc6331.png[/img]昨天手贱rm -rf /home
赶紧从其他服务器拷过来[/quote]等一个引发更多bug[s:ac:羡慕]
[quote][pid=591126341,30788837,1]Reply[/pid] Post by [uid=62622167]年幼的剑魂[/uid] (2022-02-23 17:29):
今天不改估计再过个几周内存就爆了,那服务器上还有很多别的服务[s:a2:大哭][/quote]给你捋捋
已经运行了一年多没出问题, 在你的上级那边这已经是一个成熟服务了
如果出了问题, 你再去修, 那就是你成功解决了一个问题
现在问题还没出, 你去修, 修好了没你啥功劳, 修坏了是你把一个成熟服务搞坏了
Reply to [pid=591127555,30788837,1]Reply[/pid] Post by [uid=39705129]ZhuJiu6[/uid] (2022-02-23 17:34)
带测试报告的,驻场的运维跟客户说了,客户说不影响用就先更新吧[s:a2:大哭]
不然我也远程不过去呀