使用数据库连接,未在关闭连接时关闭数据库连接池,导致数据库不可用

【影响范围】
全网不可用

【故障表现】
页面报内部服务错误

【处理过程】
1、9点40,业务团队后端服务监控群、大数据后端服务监控群等,出现大量报警,提示“1040】Too many connections”

2、查看各数据库服务器的数据库连接情况,发现10.0数据库服务器,数据库连接数已达到上限

3、查看当前服务器MySQL在运行的线程,发现大数据库账号的线程数达到919个

4、检查大数据可能导致异常的服务,发现只有服务A初始化数据会导致。停止该服务后,连接数恢复正常。

【原因分析】

1、主要原因
大数据初始化服务A,因只关闭数据库连接,没有关闭数据库连接池,且没有限制连接池数量,导致数据连接持续增加,最后达到最大值2k,因数据库连接达到上线而导致请求不来。

2、次要原因
数据库连接缺少监控,导致业务报警后,迟迟定位不到原因
大数据读的主库,扩大了影响范围,提升了故障等级

【其他】
业务报警8点40发生,用户9点36反馈,我们有56分钟的时间可以在用户无感知的情况下解决这个问题,但我们没有解决,质量管理部需要牵头规范解决这个问题,提升我们解决故障的效率。

【改进措施]
1、修复对应Bug

2、增加数据库连接数监控

3、10.0增加从库,大数据通过从库读业务库

4、确保资源层面监控无遗漏(服务器、数据库、中间件、网络一级运维角度看到的应用是否健康等)

5、梳理系统内可能存在的风险,并制相应制度和规范来消除风险

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值