Tomcat配置连接回收、超时

1、问题背景:
在很多时候,连接数据库可能会出现连接数据库老是断掉,用了一段时间久断掉,或者不用了就自动断掉了,或者用了没有有效的回收连接,导致Tomcat时不时断掉的问题

2、解决方案:
我们可以在我们的数据源里面作如下配置:
maxActive="150" 最大活动连接(如果还不够,可以适量根据情况再配置大一点)
initialSize="10"初始化连接
maxIdle="60"最大空闲连接
minIdle="10"最小空闲连接
maxWait="3000" 从池中取连接的最大等待时间,单位ms.
validationQuery="select top 1 * from sysobjects"验证使用的SQL语句
testWhileIdle = "true"指明连接是否被空闲连接回收器(如果有)进行检验.如果检测失败,则连接将被从池中去除.
testOnBorrow = "false"借出连接时不要测试,否则很影响性能
timeBetweenEvictionRunsMillis = "30000"每30秒运行一次空闲连接回收器
minEvictableIdleTimeMillis = "1800000"池中的连接空闲30分钟后被回收
numTestsPerEvictionRun="3" 在每次空闲连接回收器线程(如果有)运行时检查的连接数
removeAbandoned="true"连接泄漏回收参数,当可用连接数少于3个时才执行
removeAbandonedTimeout="180"连接泄漏回收参数,180秒,泄露的连接可以被删除的超时值
logAbandoned="true"被丢弃的数据库连接是否做记录,以便跟踪,在log中打印出回收Connection的错误信息,包括在哪个地方用了Connection却忘记关闭了

    推荐阅读