当前位置:  开发笔记 > 运维 > 正文

HTTP/1.1流水线和HTTP/2多路复用有什么区别?

如何解决《HTTP/1.1流水线和HTTP/2多路复用有什么区别?》经验,为你挑选了2个好方法。

是因为它需要按照请求的顺序对客户端做出响应,导致HTTP 1.1中的行头阻塞问题?

如果每个请求花费的时间相等,那么就不会有行头阻塞和HTTP 1.1流水线操作,并且会执行与HTTP/2多路复用相同的操作吗?

(假设HTTP/2请求中没有请求优先级,并忽略HTTP/2的其他更改,例如头压缩,二进制等)



1> Elijah Lynn..:

没有流水线操作的HTTP/1.1:在下一个请求发出之前,必须响应TCP连接上的每个HTTP请求.

带有流水线的HTTP/1.1:可以立即进行TCP连接上的每个HTTP请求,而无需等待先前请求的响应返回.回复将以相同的顺序返回.

HTTP/2多路复用:可以立即进行TCP连接上的每个HTTP请求,而无需等待先前的响应返回.回复可以按任何顺序返回.


当您阅读有关HTTP v2并尝试理解多路复用和流水线之间的区别时,这非常有用.谢啦!

2> Barry Pollar..:

HTTP/1.1流水线操作仍然要求以请求的顺序完整地返回请求.

HTTP/2允许将请求响应拆分为块并以混合方式返回,从而避免行头阻塞.

此外,HTTP/1.1流水线从未真正起飞,浏览器和服务器支持也是有限的(参见:https://en.m.wikipedia.org/wiki/HTTP_pipelining).

但是,从理论上讲,它们是相似的,因此具有类似的性能优势.HTTP/2只是一个更好,更全功能,更受支持的版本 - 以及您注意到的其他好处.

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有