跳到主要内容
佳益手记

企业博客

项目复盘 · 发布 2026年6月15日

上线故障复盘:一次数据库连接耗尽

系统在周一早上九点全面不可用,根因是一个没有被关闭的数据库连接。

故障发生在业务最繁忙的时段。用户打开页面一直转圈,服务端日志显示大量超时。我们从网关一路排查到数据库,最后发现问题出在一段循环逻辑里。

故障链条

一段批量处理代码在循环里创建数据库连接,但没有关闭,连接池在二十分钟内被耗尽。

连接池耗尽后,所有请求排队等待,超时时间设置为三十秒,用户侧表现为页面卡死。

监控只采集了服务器 CPU 和内存,没有采集连接池使用率,因此没有告警。

修复与改进

当天改为复用同一个连接,并在代码审查中增加资源释放检查项。

监控新增连接池活跃数、等待队列长度两项指标,设置百分之八十告警。

超时时间从三十秒降到八秒,让用户更快看到错误提示,而不是长时间等待。

故障复盘的重点不是找责任人,而是找到那条没有被监控覆盖的路径。补上它,同类问题就不会再来。

返回博客列表

想把文章里的方法用到您的项目里?

我们乐于分享更多实施细节,也欢迎您带着具体问题与我们交流。

开始一次对话 →
— 编辑部 · 佳益方圆EST. 2019 · JYFY