答案 0 :(得分:3)
连接池是一种重用连接的机制,因为建立新连接的速度很慢。
如果您使用MSSQL连接字符串和System.Data.SqlClient,那么您已经在使用它了 - 在.Net中,这些东西大部分时间都在使用它。
作为服务器端游标(查找T-SQL游标语句),30k迭代的循环可能会更好,这取决于你在sproc之外的每一步做什么。
长查询很好 - 但要小心从网页调用它们,因为Asp.Net并没有真正针对长时间等待进行优化,并且某些连接会被切断。
答案 1 :(得分:2)
关于连接池事情的更多信息......你已经在SqlClient中使用它了,但是只有当你打开的每个新连接的连接字符串相同时。我的理解是框架会在可能的情况下自动汇集连接,但是如果连接字符串从一个连接稍微变化到下一个连接,那么新连接将不会来自池 - 它会重新创建(因此它更昂贵) )。
您可以将性能监视器应用程序与XP / Vista一起使用来查看SQL连接,您可以很快看到是否正在使用池。查看“性能监视器”中的“.NET CLR数据”类别。
答案 2 :(得分:0)
我是第二个基思;如果你正在调用存储过程30,000次,那么你遇到的问题远远大于连接池。
答案 3 :(得分:-3)
this thread也部分回答了您的问题。搜索会显示这个..连接池的定义,其中Google将回答第一个命中为this ..
这会留下最好的做法,我认为这是一个很好的问题:)
+1到Keith's Answer。他的头上钉了一针。
只是来自FAQ的礼貌提醒:
您之前搜索过互联网 问你的问题,然后你来 我们拥有研究和信息 关于你的问题......对吧?