为什么要使用数据库连接池,每次连接都关闭,数据库默认100条连接?
疑惑1、使用数据库连接池有什么好处?2、我关闭数据库连接,即使不是立即回收,100个连接也够了?3、我用了数据库连接池,为什么还是不管用?解惑第一个问题假设设置数据库连接池最小连接数是131、数据库连接池就是开13个线程连接数据库;(13个连接不会关闭,除非程序关了)2、在执行对数据库操作中使用连接池里的连接,用完只要关闭连接,就等于把连接还回池子里面;3、池子...
疑惑
1、使用数据库连接池有什么好处?
2、我关闭数据库连接,即使不是立即回收,100个连接也够了?
3、我用了数据库连接池,为什么还是不管用?
解惑
第一个问题
假设设置数据库连接池最小连接数是13
1、数据库连接池就是开13个线程连接数据库;(13个连接不会关闭,除非程序关了)
2、在执行对数据库操作中使用连接池里的连接,用完只要关闭连接,就等于把连接还回池子里面;
3、池子里面的连接可以反复被使用;
4、当对数据库操作频繁,连接池里面的连接不够用的时候,就会一个个排队等待处理;
好处:
1、省时间:一个连接花费很长时间,建立又销毁占内存空间,线程池是重复使用这些连接池;
2、设置连接最大值:连接多时,可以排队;不会导致数据库崩溃
第二个问题
1、如果没有使用连接池,关闭数据库连接以后,由于Java回收机制的时间不定时,不是立即回收
2、如果使用的是数据库连接池,关闭数据库连接以后,就会被连接池回收了;
3、如果连接都关闭并且连接池使用配置正确的话,100连接就够了;
第三个问题
可能是连接池死锁的问题;
连接池使用不正确;
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)