下表描述了可用于调整连接池行为的 ConnectionString 值。
名称 | 默认值 | 说明 |
---|---|---|
Connection Lifetime | 0 | 当连接返回到池中时,将对它的创建时间和当前时间进行比较,如果时间间隔超过由 Connection Lifetime 指定的值(以秒为单位),则会毁坏该连接。在聚集配置中可以使用它来强制在运行服务器和刚联机的服务器之间达到负载平衡。
如果值为零 (0),则将使池连接具有最大的超时期限。 |
Connection Reset | 'true' | 确定在从池中移除数据库连接时是否将其重置。对于 Microsoft SQL Server 版本 7.0,如果设置为 false,将避免在获取连接时经历一个额外的往返过程,但必须注意的是连接状态(如数据库上下文)不会被重置。 |
Enlist | 'true' | 当为 true 时,如果存在事务上下文,池管理程序将自动在创建线程的当前事务上下文中登记连接。 |
Max Pool Size | 100 | 池中允许的最大连接数。 |
Min Pool Size | 0 | 池中维护的最小连接数。 |
Pooling | 'true' | 当为 true 时,将从相应的池中取出连接,或者在必要时创建连接并将其添加到相应的池中。 |
连接池的性能计数器
SQL Server .NET Framework 数据提供程序添加了几个性能计数器,它们将使您能够微调连接池特性,检测与失败的连接尝试相关的间歇性问题,并检测与对 SQL Server 的超时请求相关的问题。
下表列出了可以在“.NET CLR 数据”性能对象下的“性能监视器”中访问的连接池计数器。
计数器 | 说明 |
---|---|
SqlClient: Current # pooled and non pooled connections | 当前池连接或非池连接的数目。 |
SqlClient: Current # pooled connections | 当前所有池中与特定进程关联的连接的数目。 |
SqlClient: Current # connection pools | 当前与特定进程关联的池的数目。 |
SqlClient: Peak # pooled connections | 自特定进程开始以来所有池中的连接数峰值。请注意:此计数器只有在与特定进程实例关联时才可用。_Global 实例始终返回 0。 |
SqlClient: Total # failed connects | 打开连接的尝试因任何原因而失败的总次数。 |
注意 将 SQL Server .NET Framework 数据提供程序性能计数器与 ASP.NET 应用程序一起使用时,只有 _Global 实例是可用的。因此,性能计数器返回的值是所有 ASP.NET 应用程序的计数器值的总和。
更多SQL内容来自木庄网络博客
- 欢迎访问木庄网络博客
- 可复制:代码框内的文字。
- 方法:Ctrl+C。