谷歌的博客表明,Chrome106 和其它基于 Chromium 的新版本将会默认禁止 HTTP/2 Server 推送。

HTTP/2使得服务器能够“推送”到服务端所需的资源,而 HTTP/2 的服务器 Push 功能可以避免 HTTP/1. x 的无意识地按照顺序装载资源,目的在于改善页面的反应速度。

「热议话题」Chrome将禁用对服务器推送的 HTTP/2支持插图
Chrome将禁用对服务器推送的 HTTP/2支持

但这个功能逻辑有一个问题,那就是将资源集中在一个单一的业务服务器上,同时向多个静态资源进行并发,不仅没有提高,反而降低了系统的响应速度。而对于前、后两个独立的服务, HTTP/2本身就支持多任务, server push也只是让 HTML的解析速度稍微慢一点,对于现在的浏览器而言,几乎可以忽略不计。

在 HTTP/2时代,仅1.25%的 HTTP/2网站采用此功能。这个特性在 HTTP/3推出后就完全被人遗忘了,最近一次的分析显示, HTTP/2的用户比例从1.25%降至0.7%。

替代方案

103 Early Hints是服务器 Push最好的选择,它拥有很多 Push的优势,并且缺点也很少。103 Early Hints和服务器的推送资源不一样,它仅会给一个浏览器提供一些可以从这个要求中获益的信息。如果浏览器本身就具有 HTTP缓存中的资源,那么就不会再装载了。

另外一个选项是,可以让网页与浏览器协同工作,在网页装载的初期,提前装载重要的资源。虽然没有服务器 Push或者 Early Hints那么快速,但是不会造成重要的网页资源的延误,而且其他两个方法都有可能出现这样的问题。

路人点评

不得不说,谷歌的霸主,就是他的粉丝,而不是他的粉丝,简直就是个人渣。而且,他的脸上没有一丝的羞愧,那张狰狞的脸,完全暴露了出来!

谷歌已经放弃了“意识形态”,完全放开了自己的“不要脸”!别了!