我用c3p0做数据源,如果请求数量超过我连接池的最大数量,请求会等待释放的连接呀,还是可以继续申请连接或是其他别的情况

解决方案 »

  1.   

    等……看看下面的文字你就明白了?
    数据库和连接池都有连接数限制,比如都是20个不用连接池:1000个请求,980个会等待,20个去数据库,等待其中某个完了,如果你手动close连接,则会马上新生一个连接给第21个请求,如果你忘了close,则数据库连接挂起直到timeout,数据库自己回收掉,等回收完再新生连接。用了连接池:不用关心close问题,连接池存了一定数量连接,有谁用完了就给另一个请求,如果20个都被请求完了,也一样会等待,直到某个连接做完,再给下一个请求。连接池优点:不用开关连接(前20个还是要新开连接的),极大提高了效率。