浏览器允许的并发请求资源数

懵懂的女人 提交于 2020-04-07 17:32:31

浏览器的并发请求数目限制是针对同一域名的。
即同一时间针对同一域名下的请求有一定数量限制,超过限制数目的请求会被阻塞,这就是为什么会有img.abcde.com, abcde.com 之类域名的原因。

 

 

 
 

   版本

    HTTP1.0

   HTTP1.1

IE 6\7

4

2

IE 8

6

6

IE 9

10

10

IE 10

6

6

IE 11

6

6

chrome

6

6

firefox

6

6


如图,有的请求会持续很长时间,如果把 img, css, js... 都放到 abcde.com 一个域名下面,其他请求就迟迟无法完成,浏览者看来就是『卡住了』。
而把请求放到多个域名下,增加浏览器的并发请求数,比如图片放到 img.abcde.com 域名下。


京东对静态资源的处理,通过以下js代码使得页面上的图片资源来自于不同域名的服务器,就是对以上所说的优化:

 

var b,a = String(a);
switch (a.match(/(\d)$/)[1] % 5) {
  case 0:
    b = 10;
    break;
  case 1:
    b = 11;
    break;
  case 2:
    b = 12;
    break;
  case 3:
    b = 13;
    break;
  case 4:
    b = 14;
    break;
  default:
    b = 10;
}
return "http://img{0}.360buyimg.com/".replace("{0}", b);

 

为什么要这么做?
1、图片服务器做集群;
如果一个挂了,其他还可以使用;
2、多个域名请求到一个服务器?
a)浏览器针对同一个域名并发数限制;
b)使用多个域名,加快资源下载;
c)注意:并不是域名越多加载越快? DNS解析就越多

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!