小弟使用的是bonecp管理数据库连接,数据库采用oracle。在运行时,如果使用了3个以上的session连接,就会出现如下错误。
Io 异常: Socket read timed out
HTTP Status 500 - Request processing failed; nested exception is org.apache.ibatis.exceptions.PersistenceException:
试了各种办法,比如设置超时时间,在oracle数据库端配置最大连接数,设置Mybatis数据库池的连接数,发现都没有用。后来看了下BoneCP连接池配置参数,发现以下两处地方设置的有问题【回收与检测空闲连接时间设置的太大了】:
<!-- 设置connection的空闲存活时间。这个参数默认为60,单位:分钟。设置为0该功能失效。 通过ConnectionTesterThread观察每个分区中的connection,如果这个connection距离最后使用的时间大于这个参数就会被清除。 注意:这个参数仅和idleConnectionTestPeriodInSeconds搭配使用,而且不要在这里设置任何挑衅的参数! -->
<!-- 1小时回收空闲链接 -->
db.idleMaxAgeInMinutes=60
&l