【问题标题】:Difference between HTTP pipeling and HTTP multiplexing with SPDYHTTP 管道和使用 SPDY 的 HTTP 多路复用之间的区别
【发布时间】:2012-05-15 20:17:10
【问题描述】:

感谢 Google 和 Stack Overflow,我想我理解了常规 HTTP 流水线和 HTTP 多路复用(例如,使用 SPDY)之间的区别,所以我制作了下图来展示基于三个常规 HTTP 请求的流水线和多路复用之间的区别.

我的两个问题是:

  1. 图像是否正确?
  2. 如果流水线没有head-of-line blocking problem,它是否会与HTTP 多路复用一样快?还是我错过了一个额外的区别?

【问题讨论】:

    标签: http spdy multiplexing http-pipelining


    【解决方案1】:

    这不是错误的,但它忽略了一个重要方面。 HTTP 要求您在任何其他请求可以继续之前交付整个响应。您在图中显示的内容是正确的,因为使用 SPDY,我们最终可以打破“线头”要求并在响应可用时提供响应。但是,我们也不必等待任何请求完全完成。

    想象两个请求,大小都是几kb:每个请求都有多个数据包,分别称为[r1p1, r1p2][r2p1, r2p2]。 HTTP 要求 pN 以准确的顺序到达。另一方面,SPDY 允许我们:[r2p1, r1p1, r1p2, r2p2]

    还值得一提的是,使用 SPDY,我们可以使用请求优先级来提示服务器哪些请求应该优先,即使它在网络上稍后到达(在六个其他强大功能中)。

    【讨论】:

    • @Matt 你 +1 了 answer,因为 question 包含一个很棒的图表?或者,也许您只是错误地附加了您的评论...
    • 第二个问题呢? > 如果流水线没有线头阻塞问题,它是否会像 HTTP 多路复用一样快?还是我错过了额外的差异?
    • HTTP分块传输模式怎么样?
    猜你喜欢
    • 2015-05-01
    • 1970-01-01
    • 2013-09-04
    • 2016-04-01
    • 2015-09-30
    • 2012-01-12
    • 1970-01-01
    • 1970-01-01
    • 2015-08-30
    相关资源
    最近更新 更多