在springboot项目中出现一个问题,该问题从字面意思上说是数据链池链接资源已全部使用完毕,没有可用的链接使用
排查问题发现原因是:
sql由于参数填写错误,进行了全表扫描,由于返回数据量过大导致数据卡在映射层,导致资源卡死的情况,每调用一次就会损失一个链接资源,当所有链接资源都使用完毕时候,就出现以上的情况。
所以在写sql时一定要注意分页处理,避免这种情况。
导致卡死的情况两种
第一种是 卡在数据库层 : 就是当前执行的sql过去复杂又没有索引,一直处于在运行状态没有结果返回。
第二种是 卡住程序映射层 : 就是数据量过大,数据库里面的大量数据映射到程序中这个过程过去长,而jdbc本身又没有处理这种情况的方式。
我们以spring 提供的 JdbcTemplate 为列
解决方案
标签:available,映射,HikariPool,Connection,sql,链接 From: https://www.cnblogs.com/lccsdncnblogs/p/17526214.html