队头阻塞

  

队头阻塞

  

请求——应答模式加剧了HTTP的性能问题,这就是著名的“队头阻塞”(Head-of-line阻塞)。

  

当顺序发送的请求序列中的一个请求因为某种原因被阻塞时,在后面排队的所有请求也一并被阻塞,会导致客户端迟迟收不到数据。

  

HTTP/1.1不能完全解决,但可以缓解:

  

方法1:并发连接,同时对一个域名发起多个长连接,浏览器支持6 - 8个连接。
但这种方式也存在缺陷。如果每个客户端都想自己快,建立很多个连接,用户数×并发数就会是个天文数字。服务器的资源根本就扛不住,或者被服务器认为是恶意的,反而会造成“拒绝服务”。

  

方法2:域名分片,多个域名指向同一个服务器

队头阻塞