多数据源项目一开启便启动了几百个MySQL数据库连接,

我的项目使用了多数据源,一个商家一个单独的数据库,tomcat启动的时候检测到会开启大量的数据库连接,平均每个数据库会有10或11个连接,这些连接的状态是sleep。当数据库有四十多个的时候,一启动项目就会有四百多个连接,而我们买的数据库连接是有限的

我想问一下每个数据库的sleep的连接是数据库连接池创建用来给以后使用的么?项目启动的时是在初始化数据库插件(插件start)时创建这些连接的么?能否只创建5或6个连接?

评论区

远方

2017-06-10 09:53

会不会是jfinal使用了持久的数据库连接或者使用连接后没有关闭呢?

杜福忠

2017-06-10 16:45

比如使用的Druid:
查看com.jfinal.plugin.druid;下的DruidPlugin
提供了:// 初始连接池大小、最小空闲连接数、最大活跃连接数
public DruidPlugin set(int initialSize, int minIdle, int maxActive) {
this.initialSize = initialSize;
this.minIdle = minIdle;
this.maxActive = maxActive;
return this;
}
设置1也可以的,

杜福忠

2017-06-10 16:48

默认值:
// 初始连接池大小、最小空闲连接数、最大活跃连接数
private int initialSize = 10;
private int minIdle = 10;
private int maxActive = 100;

JFinal

2017-06-11 16:15

jfinal 提供了 DruidPlugin 与 C3p0Plugin 两个数据连接池插件,都是可以通过调用其 setter 方法配置连接数量的

远方

2017-06-12 12:05

好的,谢谢

热门反馈

扫码入社