17

对于 SQL 连接池,为什么我们需要设置最小池大小?由于连接将保存在连接池中并重复使用,为什么我们需要保持最小池大小指定的活动连接?谢谢。

4

2 回答 2

20

打开和维护连接是昂贵的,所以如果你知道你需要多个连接(总是)最好指定,MinPoolSize 因为这样可以确保这些连接可用。

此外,来自MSDN

如果MinPoolSize未在连接字符串中指定或指定为零,则池中的连接将在一段时间不活动后关闭。但是,如果指定MinPoolSize大于零,则连接池不会被销毁,直到 AppDomain 被卸载并且进程结束。维护非活动或空池涉及最小的系统开销。

于 2013-10-07T10:01:47.820 回答
4

为什么我们需要保持由最小池大小指定的实时连接

您可能知道,连接创建是资源密集型工作。因此,如果您的应用程序即使在空闲数小时后仍需要一致的响应时间,您可以选择将其设置为一个较小的数字,例如 5。在这种情况下,第一个用户请求将不必等待这些数据库连接建立。您可以在此处阅读池化的详细信息。

于 2013-10-07T10:03:18.757 回答