Google Chrome正开发共享字典功能 可大幅压缩网站资源提高加载速度

站长云网 2024-03-08 蓝点网 站长云网

GoogleChrome团队向来只关注两个问题:第一如何减少内存使用量、第二如何提高网站加载速度(玩笑话,不过这些年谷歌在这些方面的变更是最多的)。现在谷歌正在研究一种新的共享字典压缩技术来大幅度提高网站资源的压缩效率,从而进一步缩短网站的加载时间。

下面是一个简单的例子:

假设网站使用Angular框架构建,当前使用的框架版本为1.7.9版,在没有压缩的情况下文件为172KiB,如果使用Brotli压缩算法则可以将其体积缩小到53KiB,也就是获得大约70%的压缩率。

此时开发者需要将框架版本从1.7.9版升级到1.8.3版,由于新版本的大小与旧版本类似,因此采用Brotli压缩算法后体积也类似。

但如果使用自定义的共享词典功能,就可以使用之前版本的资源字典来压缩新版本的资源,这样实际输出的文件大约只有4KiB,压缩率高达98%,这可以大幅度缩小浏览器需要下载的文件,从而提高网站的加载速度。

自定义共享字典技术:

Chrome团队解释称,自定义字典是一个外部文件,可以应用于任何输入,这些字典可以是高度针对单一应用的产品代码或是任何内容,而字典对于输入的适用性则可能对整体压缩效率产生巨大影响,与输入内容高度相似的字典实际上可以达到更高的压缩率。

在过去要想解压文件需要使用想通的字典,这使用一种名为SDCH的流程,但存在潜在的安全弱点。Chrome称新的共享字典压缩技术已经解决了这些安全性问题,无论是动态还是静态资源都可以获得更多好处。

后续Chrome会在Accept-EncodingHeader中声明受支持的压缩算法,例如gzip、br(即Brotli)、zstd(即ZStandard)等,当启用共享词典后会加上额外声明,包括br-d或者zstd-d。

开发者使用此功能:

当前测试阶段如果开发者要在生产环境中使用此功能,需要通过Chrome的OriginTrial注册获取Token,然后在网站上使用这个Token来启用共享字典压缩功能。

对于个人用户,可以在Chrome中开启CompressionDictionaryTransport实验性选项,如果访问的网站已经获取Token开启共享词典,那就能用了。

viaChromeDeveloper:https://developer.chrome.com/blog/shared-dictionary-compression?hl=en

责任编辑:站长云网