http1因为没有对请求跟响应加上唯一标识(历史包袱),为了保证请求跟响应的一一对应,同一个连接上请求的发送必须在上一个请求完成之后(http层面的hol blocking问题)。所以,只要有并发,必然就会有阻塞,这个阻塞会随着请求并发的程度跟网络环境逐渐放大,这也是http1效率低(慢)的主要原因。像1.0的keep-alive出现之前,每次请求都需要重新建立连接,效率更是可怕的低。
不过http2在frame(应用层)层面加了一个streamId,使得不同请求的数据可以在同一条连接上混合传输,使得并发的效率得到大幅提升
随笔之Http为什么经常被吐槽慢?
最新推荐文章于 2025-12-14 16:46:29 发布
博客指出HTTP1因未对请求和响应加唯一标识,存在http层面的hol blocking问题,有并发就会阻塞,且随并发程度和网络环境放大,导致效率低。而HTTP2在frame层面添加streamId,使不同请求数据可在同一条连接上混合传输,大幅提升并发效率。
1万+

被折叠的 条评论
为什么被折叠?



