数据库连接池能使应用程序重用池中的连接。如果没有连接池,每次请求连接就需要耗费额外的性能开销来打开一个新的连接。
连接池是和连接字符串精确匹配的,对名称和值之间的空格也十分敏感。如果一个连接字符串没有匹配到现有的池,那么就会创建一个新的池。
每次请求一个连接时,都会到池中查找是否有可用的连接,如果没有,就创建一个新的连接,使用后通过Dispose或Close将连接池化。如果池中的连接达到了最大值,那么请求就必须排队等待。
如果连接生存期已过,或者连接池管理程序检测到和数据库的连接已经断了,连接池管理程序将从池中移除连接。