关闭

对SQL连接池的理解

589人阅读 评论(0) 收藏 举报
分类:

本人是做asp.net开发的,用到的数据库也是sql server,写了一年的代码了,每天写conn.open()和conn.close(),最近又开始研究C#,觉得自己没有学好,因为会写代码的人多得是,能说出为什么要这么写的人没有几个(至少在我这个工作年限)。

我无意中了解到关于一个Idisposable接口的知识,研究了一天也没有完全理解什么时候要调用这个接口的方法,可是发现using 这个语法就会去调用这个接口的方法去销毁一个对象,然后看了很多代码,发现,有的人连接数据库用的useing,而我却一直用的open和close,可是我这样写也没出什么错误,今天查了很多资料,最后发现,使用using后会销毁这个对象,使用close会把连接关闭,然后放到sql的连接池里面,SQL连接池有一个超时机制,超时的连接也会被销毁掉,那么使用using的结果就是每次都是重新打开一个物理连接,每次都会消耗一定的时间,不过这个时间很短,一般也就几毫秒而已,所以我们不用太在意。

如果考虑到并发量很大的网址,或者对性能要求很强的网址,每次都去打开这个连接是不是很浪费时间和资源呢,最后我发现sql的连接字符串中有一个属性 Min Pool Size,默认的是0,也就是说sql连接池有多少个连接数,这个连接数是物理连接数,我们可以改变这个值来设置让sql连接池一直有这么多物理连接不关闭,这样子,我们就不用考虑打开数据库连接的时间了。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:35008次
    • 积分:673
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:157篇
    • 译文:0篇
    • 评论:0条
    文章分类