2010-08-02 49 views
0

我们在页面上使用了6个iFrames。他们从外部Web服务和内部WCF服务获取数据并显示数据。每个iFrames都有一个单独的aspx页面。从我们的perf监控中,我们发现在任何时候只有两个线程正在并行执行。并非所有6个线程都被执行。这可能是什么原因?是否有限制,超过2个线程不能并行创建?有什么配置可以改变这个吗?并行执行的iFrames

回答

0

大多数Web浏览器对呈现元素将同时使用的线程数量设置限制。我相信很多网页浏览器的默认值是2。所以你所看到的是正确的,浏览器本身一次只请求2个对象。

+0

感谢响应。 XMLHttpRequest会解决这个问题吗?我想即使这样浏览器也会限制这一点。有没有可能改变这种行为? – KPK 2010-08-02 15:23:28

0

大多数浏览器一次只能从每个域发出两个请求。

如果请求不是无会话,每个用户一次只有一个请求由服务器处理,则来自同一用户的其他请求将排队。

+0

谢谢。有什么办法可以解决这个问题吗? – KPK 2010-08-02 15:24:17

+0

@KPK:您可以为您的域名设置别名,以便浏览器认为它们是独立的域名。 – Guffa 2010-08-02 16:22:33

+0

谢谢。我尝试使用IIS设置别名。但我无法浏览到原始文件夹下的页面。我得到一个主机无法解决的错误。我需要为此咀嚼DNS吗?任何一步一步的文章将有很大的帮助。谢谢 – KPK 2010-08-02 19:02:30

0

IIS对于它将执行的并发线程数有上限,其余的将排队,直到前两个完成。我在使用回调时遇到的现象。

+0

谢谢。有什么方法可以改变这种默认行为吗? – KPK 2010-08-02 15:27:51

3

这是IE6IE7如此。与DNS无关。为了模拟这一点,在IE中同时运行三个或更多的下载,你会发现一次只能执行两个,其余的都会等待。与Firefox不同的情况下,我认为这是6值得检查。