# http1.0、http1.1及http2.0的区别

每逢面试必然少不了问http1.0、http1.1和http2.0的区别,下面简单重要的总结一下,回答完毕后面试官绝对好评!

# http1.0

每次请求都需要重新建立tcp连接,请求完后立即断开与服务器连接,这很大程度造成了性能上的缺陷,http1.0被抱怨最多的就是连接无法复用。

# http1.1

引入了长连接(keep-alive),相较于1.0减少了连接和关闭的延迟,提高了效率,但是若干个请求还是需要串行排队处理,如果一旦某个请求超时,后面的就会被阻塞,也就是常说的线头阻塞。

# http2主要特点是

1.新的二进制格式传输:二进制即0和1的组合,实现方便健壮,而1.x版本是基于文本,解析存在缺陷

2.多路复用:一个连接可以有多个请求,且可以混杂在一起根据requestid来区分不同的请求,提高了连接的利用率,降低了延迟

3.header头部压缩:通讯两方各自缓存了一份 header请求头表,避免了重复的header传输,且缩小了包的体积大小

4.服务端推送功能:可以服务端主动向客户端push消息

Last Updated: 9/14/2023, 5:46:38 PM