对于SQL连接池,我们为什么需要设置最小池大小?由于连接将保存在连接池中并重用,为什么我们需要保持最小池大小指定的实时连接?感谢。
答案 0 :(得分:20)
打开和维护连接非常昂贵,因此如果您知道需要多个连接(总是),最好指定MinPoolSize
,因为这样可以确保这些连接可用。
此外,来自MSDN:
如果未在连接字符串中指定
MinPoolSize
或是 如果指定为零,则池中的连接将在a之后关闭 不活动的时期。但是,如果指定的MinPoolSize
更大 除了零之外,连接池在AppDomain之前不会被销毁 卸载并且流程结束。维护不活动或空池 涉及最小的系统开销。
答案 1 :(得分:4)
为什么我们需要保持min pool size指定的实时连接
您可能知道连接创建是资源密集型工作。因此,如果您的应用程序需要一致的响应时间,即使它处于空闲状态数小时,您也可以选择将其设置为较小的数字,例如5。在这种情况下,第一个用户请求将不必等待这些数据库连接建立。您可以阅读合并here的详细信息。