疑惑

1、使用数据库连接池有什么好处?

2、我关闭数据库连接,即使不是立即回收,100个连接也够了?

3、我用了数据库连接池,为什么还是不管用?


解惑

第一个问题

假设设置数据库连接池最小连接数是13

1、数据库连接池就是开13个线程连接数据库;(13个连接不会关闭,除非程序关了)

2、在执行对数据库操作中使用连接池里的连接,用完只要关闭连接,就等于把连接还回池子里面;

3、池子里面的连接可以反复被使用;

4、当对数据库操作频繁,连接池里面的连接不够用的时候,就会一个个排队等待处理;

好处:

1、省时间:一个连接花费很长时间,建立又销毁占内存空间,线程池是重复使用这些连接池;

2、设置连接最大值:连接多时,可以排队;不会导致数据库崩溃


第二个问题

1、如果没有使用连接池,关闭数据库连接以后,由于Java回收机制的时间不定时,不是立即回收

2、如果使用的是数据库连接池,关闭数据库连接以后,就会被连接池回收了;

3、如果连接都关闭并且连接池使用配置正确的话,100连接就够了;


第三个问题

可能是连接池死锁的问题;

连接池使用不正确;

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐