Connection Pooling in .NET/SQL Server?在使用SQL Server数据库在.NET中开发应用程序时,编写自定义连接池代码是否必要或有利? 我知道ADO.NET为您提供了启用/禁用连接池的选项 - 这是否意味着它已内置到框架中而我不需要担心它? 为什么人们谈论编写自己的连接池软件,这与ADO.NET中内置的有何不同? ADO.Net内置的连接池非常强大且成熟。我建议不要试图编写自己的版本。 我不是真正的专家,但我知道ADO.NET有自己的连接池系统,只要我一直在使用它,它就是完美的。 我的反应是重新发明轮子是没有意义的...只要确保你完成它们后关闭你的连接,一切都会好的! 我希望别人可以给你一些更坚定的东西! 我的理解是,在使用SqlConnection对象时,会自动为您处理连接池。这是专为与MSSQL配合使用而设计的,可确保有效地汇集连接。您只需要确保在完成它们时关闭它们(并确保它们被丢弃)。 我从未听说过人们需要自己动手。但我承认我的经历有点局限。 随着ADO.Net的出现和更新版本的SQL连接池在两个层上处理,首先通过ADO.Net本身,其次通过SQL Server 2005/2008直接处理,无需自定义连接池。 我被告知,正在计划或已经在Oracle和MySQL中实施了类似的支持。 好吧,它将会消失,因为所有这些问题的答案都将是LINQ。顺便说一句,我们从来没有为我们的任何应用程序需要自定义连接池,所以我不确定所有的噪音是什么。 |