没有每个请求都不会生成新的应用程序域。该网站/应用程序的所有请求都位于同一个应用程序域中,因此共享连接池。一旦asmx请求与连接完成,它将它返回到池中,并且线中的下一个请求抓取它(假设池中没有另一个连接可用)。
澄清的一点。您可以拥有两个指向相同代码并且位于不同应用程序域的不同Web应用程序。这两个应用程序不共享任何内容(考虑两次启动相同的应用程序)。
我也好奇,如果这将是有益的 在这种情况下, 设置闵池大小(以0以外的 少数)。
因此,根据应用可能会有所帮助。建立连接需要时间,所以准备好一些准备就可以放弃。如果您有请求说使用一个连接,那么可以让一个人等待(这一切都取决于您希望应用程序响应的速度)。当你需要为一个请求打开3或4个不同的(你明白的)时,这真的可以发挥作用。那么为什么你需要多个连接?关于访问数据和用于登录数据库的单独线程(记录到数据库与文件是完全不同的对话)呢?现在你需要两个。有多种情况可以发挥作用。取决于你的数据库服务器持有一个开放的连接可以很便宜,所以将它设置为一个小数字可以是一个巨大的压力。 (为了记录,我已经看到连接到数据库的情景需要几秒钟,比如3-5,所以在这种情况下为用户保持开放连接是有益的。)
这是用于最大池大小
不,这不是有益的,因为对该服务的所有请求都使用相同的池(假设连接使用相同的连接字符串,并且不会触及不同的服务器,而且这些服务器具有单独的连接池)。没有可用的连接,是一种非常快速且毫无疑问的破坏服务性能的方法。
谢谢,这是我怀疑,但想要一些验证。 – 2010-12-17 22:26:40
我认为设置最小池大小意味着总会有x个可用的连接数量,并且在一段空闲时间之后不会被销毁。 – 2010-12-19 05:15:11
你是对的我把它和Max Pool Size混在一起。 – kemiller2002 2010-12-19 14:56:36