sql-server - Ado.net (2.0+) 连接池是在应用程序域之前还是每个进程

标签 sql-server connection-pooling

我正在尝试理解池化理论。 ADO.NET 和 SQL Server 之间的交互要好得多,但尚未找到明确的答案。我一直假设每个进程,但我突然想到它可能是每个应用程序域。

任何深入的引用资料也将不胜感激。

最佳答案

连接池是一个复杂的野兽,因为它们是在几个不同的范围内创建的。根据SQL Server Connection Pooling在 MSDN 上:

Connections are pooled per process, per application domain, per connection string and when integrated security is used, per Windows identity. Connection strings must also be an exact match; keywords supplied in a different order for the same connection will be pooled separately.

这意味着您可以根据连接的方式和位置在同一应用程序中拥有多个连接池。

关于sql-server - Ado.net (2.0+) 连接池是在应用程序域之前还是每个进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3526617/

相关文章:

sql-server - 在Grails中更新域类

sql - 如果特定情况没有返回结果,则使用 count(*) 显示零

Tomcat JDBC 连接池 : testOnBorrow vs testWhileIdle

java - 如何配置 hibernate 以使用特定于上下文的连接信息?

node.js - 防止 knex 数据库连接池在空闲时关闭

SQL - 如何选择具有相同多个值的行

php - Laravel Eloquent 和查询生成器 "with (nolock)"

sql-server - 如何比较同一个SQL表的多行

java - 关闭连接后,数据连接池中的连接也不可用

java - 如何配置GenericObjectPoolConfig?