Http请求/并发?

时间:2010-03-13 16:14:51

标签: http concurrency

假设我的localhost上的网站大约需要3秒钟来完成每个请求。这很好,正如预期的那样(因为它在幕后做了一些奇特的网络)。

但是,如果我在选项卡中打开相同的URL(在firefox中),然后同时重新加载它们,它似乎按顺序加载每个页面而不是同时加载所有页面。这是怎么回事?

在Windows Server 2008 iis和windows 7 iis上尝试过它

4 个答案:

答案 0 :(得分:1)

这实际上取决于您使用的网络浏览器以及其中的标签支持的编程方式。

可能会使用单个线程依次加载每个标签,这可以解释您的观察结果。

修改 正如其他人所提到的,在本地主机上运行的网络服务器也是一种非常可能的单线程。

答案 1 :(得分:1)

如果我没记错,HTTP标准会将同一主机的并发连接数限制为2.这就是高负载网站使用CDN(内容分发网络)的原因。

答案 2 :(得分:0)

network.http.max-connections 60
network.http.max-connections-per-server 30

以上两个值确定Firefox对服务器的连接数。如果违反了阈值,它将处理请求。

每个浏览器都以自己的方式实现它。请求以最大化性能的方式进行。而且,它还取决于服务器(localhost更慢)。

答案 3 :(得分:0)

您的本地Web服务器配置可能只有一个线程,因此每个下一个请求都将等待上一个请求完成