流水线/持久 HTTP

网络工程 网络
2022-02-10 19:45:59

我有一个关于流水线 HTTP 的问题,这与持久 HTTP 连接相同。如果不是,那究竟是什么意思?

1个回答

持久HTTP

重用现有的 TCP 连接,因此不要为每个资源打开新的 TCP 连接。这样可以节省握手的往返时间,否则您将有 1 个用于 TCP 连接设置的 RTT 和 1 个用于 HTTP 请求的 RTT。

流水线 HTTP

并行向服务器发送多个请求。这需要持久的 HTTP。它可以进一步减少用于检索内容的 RTT 数量,因为客户端的空闲时间减少(等待响应的时间减少)并且服务器的空闲时间也减少了(等待请求响应的时间减少)。

笔记

由于丢失和 TCP 重传,您仍然可能会遇到不理想的行为。HTTP/2(Google 的 Spdy 的修改版)通过在多个 TCP 连接上巧妙地分发请求来解决这个问题。