那天晚上

十一点半准备睡,手机响了一下。监控告警:站点响应超时。

想着可能是网络抖动,看了一眼就放下了。十二点半又来一条,这次是磁盘空间不足。

起来开电脑,泡了碗面。

排查

磁盘满,第一反应是日志没清。登上去一看,日志目录才 200M,不是这个。

继续找,发现是某个缓存目录里堆了几十万个小文件。清理脚本在跑,但没生效——因为脚本里写的是按天删除,而这些文件是同一天生成的。

删完之后磁盘空出来了,但站点还是慢。

再查,数据库连接数打满了。原因是清理脚本占用了大量 IO,导致查询超时,应用层又不停重试,越重试越堵。

面已经泡软了。

解决

重启服务,加了个连接池上限,把重试改成了带退避的。折腾到三点多,监控恢复正常。

面没吃完,倒了。

想说的

做运维的人容易有一种错觉,觉得系统是稳定的。但稳定从来不是默认状态,是有人在后面盯着。

每一次安稳的访问背后,可能都有人半夜起来处理过一次你永远不知道的故障。

后来我给所有清理脚本都加了磁盘阈值判断,也用掉了几个晚上。这些事不会出现在任何总结报告里,但系统确实更稳了。

这就是这行的日常。没有英雄时刻,只有不出事。

← 返回博客

评论

发表回复

您的邮箱地址不会被公开。必填项已用 *