酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

作为软件工程师,简述 http2的理解?

HTTP/2是对HTTP 1.1的升级,旨在优化HTTP 1.1的性能问题。它基于Google的SPDY协议,并于2015年5月以RFC 7540正式发表。HTTP/2主要从以下两个方面进行优化: 1. 头部压缩:HTTP 1.1主要对Body进行压缩,而头部没有压缩。HTTP/2通过HPACK算法对头部进行压缩,减少了传输时间。 2. 队头阻塞:HTTP 1.1使用TCP协议,为了节省资源,采用了长连接,但长连接引入了队头阻塞的问题。HTTP/2引入了流和帧,解决了HTTP层面上的队头阻塞。 HTTP/2报文结构详解: 1. 二进制替换文本:HTTP 1.1采用的是文本描述,通过ASCII文本进行传输,调试程序方便,能够直接看出数据包中的数据情况。而HTTP/2使用二进制来进行传输,用01串来描述数据,调试和查看数据的具体含义就不方便了。但是这种二进制传输计算机解析方便,体积小,性能高。 2. 帧:HTTP/2数据通信的最小单位。帧用来承载特定类型的数据,如HTTP首部、负荷;或者用来实现特定功能,例如打开、关闭流。每个帧都包含帧首部,其中会标识出当前帧所属的流。 3. 消息:指HTTP/2中逻辑上的HTTP消息。例如请求和响应等,消息由一个或多个帧组成。 4. 流:存在于连接中的一个虚拟通道。 以上就是我对HTTP/2的理解,希望对您有所帮助。 [2023-11-09 18:17:50 | AI写代码神器 | 353点数解答]

相关提问