数据库连接数爆满解决方案


高并发下测试时,程序跑一会出现数据库连接数达到最大限制的情况,此时紧急的处理方案是将数据库的连接数最大值设大。
但是根本原因还要从底层的代码中寻找。
一般是数据库连接没有主动释放连接的问题。在使用spring DataSource配置数据库连接池时。需要增加如下配置

spring.datasource.removeAbandoned=true
spring.datasource.removeAbandonedTimeout=1800//单位秒
spring.datasource.logAbondoned=false
spring.dataSource.maxWait=1000 //单位毫秒

 

removeAbandoned设置为true表示,DataSource会自动将无效的connection删除。
removeAbandonedTimeout表示在多少秒后没有使用的connection将被视为无效,配合removeAbandoned=true自动删除
logAbondoned设置为true将会在回收connection事件之后打印出日志,调试的时候可以打开
maxWait表示超时等待时间


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM