那天群里告警先弹的是 A 号。
我以为又是平台日常风控,没当回事。两分钟后 B 号也叫了,再过一会儿 C 号也挂了。
那一瞬间我脑子有点空白。
打开日志一看——这三个账号挨着撞到了滑块。后台跑的是同一份浏览器目录,cookie、缓存、指纹全共享。一个被风控盯上,剩下的就跟着连坐。
平台不傻这事我之前也想过,但没料到会这么快。
那天晚上我把 browser_data 拆成了一个账号一份:browser_data/user_<账号ID>。
磁盘占用变多,启动慢了几秒,启动脚本也得改。但起码不会一爆全爆。
后来又踩了一个新坑。
Chromium 异常退出会留下一个 SingletonLock。一开始我看到锁就清掉重启,省事。
后来发现这种「看到就清」太鲁莽——容器换 hostname 之后旧锁还在、宿主机重启也会留锁、调试时手动 kill 也会留锁。这些里面可能还住着活进程。
判断条件被我改紧了:只清「当前宿主机 + PID 已死」或者「Docker 容器 hostname 漂移」这两种确定的情况。其他时候宁可走兜底逻辑,也不去乱删。
总之这事过了之后我就清楚一件事——只要「账号」在你的项目里是个独立单位,就别让它们在底层资源上彼此牵连。
省那一点磁盘,省了迟早要还。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 咕咚的小站!
评论