为什么浏览器限制并行 HTTP 请求

duc*_*cin 6 javascript browser parallel-processing ajax http

我们都知道我们应该缩小 JS、CSS 和精灵图像。不仅可以减少发送的大小,还可以减少发送的 HTTP 请求的数量。这就是我的问题 -限制浏览器并行 AJAX 请求的原因是什么/sf/answers/1033778651/ - 有关限制的更多详细信息)?

AJAX 是异步的,我们不知道它什么时候完成。并行化程度越高,等待的时间就越短。限制请求数量使得初始页面加载更加同步,因为我们必须等待、阻塞,直到 AJAX插槽空闲才能再次使用。

我对此确实有一些想法 - 但我真的很感激一个好的解释。

Sen*_*mes 2

浏览器将并行连接数限制为

改善 HTTP 响应时间并避免拥塞

HTTP 1.1 规范中建议这样做:

单用户客户端不应与任何服务器或代理保持超过 2 个连接。

更实际的是,虽然可能方便负载测试,但不施加硬限制可能会降低浏览器性能,甚至导致意外的 DoS 攻击(或者您的客户端被服务器错误地分类为 DoS 攻击者)。