因此,我期待增加最大池大小。问题是我不知道“合理”增长会是什么。现在我不设置它,只是使用100以下默认的是我的更具体的问题:确定如何提高我的连接池的最大池大小
为什么是这个数字默认为100,似乎低。将它提升到1000或者类似的东西有什么不利之处?
有没有一种很好的方法来确定这个Max应该提高到什么程度?
什么是连接池的“范围”?这个池是否连接到数据库?每个“机器/服务器”连接都有自己的池?
背景:
虽然我的应用程序运行时,我们收到以下错误:。
“超时过期从池中获取连接之前经过的超时时间。这可能是因为发生所有联网连接都在使用中,并且达到了最大池大小。“我已经阅读了很多类似的问题,所有这些都讨论了我应该如何做两件事之一。
- 确保我关闭所有连接打开它们之后
- 增加最大池大小
我有一个非常大的应用程序,所以(1)是很难确定的地方连接没有关闭。我找不到一个。
关于你是否需要,我会在这里提出一个很好的总结:http://stackoverflow.com/questions/5793960/maximum-connection-pool-size;假设你已经阅读了这篇文章,并且你确定你需要更多,这可能有助于查看你是否“泄漏”连接? http://blogs.msdn.com/b/angelsb/archive/2004/08/25/220333.aspx – dash
如果你有连接泄漏(打开而不关闭),增加池大小可能无济于事,因为打开的连接保持打开状态无限期。默认情况下,100能够在连接关闭时处理大负载,并且查询发生的速度相当快。连接池保存在.net服务器端,因此每个.net服务器都维护它自己的池 – ren
我编辑了标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 –