Brotli与zopfli是压缩算法,gzip是一种数据格式,是对deflate压缩算法的封装。
所以要比较的话也是Brotli与zopfli与deflate三者的压缩比较。
deflate
deflate(RFC1951):一种压缩算法,使用LZ77和哈弗曼进行编码,zlib与gzip都是对deflate的封装后的数据。
gzip = gzip头 + deflate编码的实际内容 + gzip尾
zlib = zlib头 + deflate编码的实际内容 + zlib尾
Zopfli
Zopfli 压缩算法是一个新的兼容 zlib (gzip, deflate) 的压缩器,该压缩器压缩时需要更多的时间(大约慢100倍),但压缩率比 zlib(deflate)要好上 5%。
Brotli
Brotli是一个通用目的的无损压缩算法,它通过用变种的 LZ77 算法,Huffman 编码和二阶文本建模进行数据压缩,是一种压缩比很高的压缩方法。在压缩速度上跟 Deflate 差不多,但是提供了更密集的压缩。
和谷歌的gzip解压缩格式比起来,Brotli能在此基础上将数据在压缩20~25%。它通过一本英语、西班牙语、汉语、印地语、俄语、阿拉伯语的常用字、词汇字典,结合机器语言,特别是HTML和JavaScript的常用术语,能够将数据比gzip, bzip2, LZMA等压缩算法的基础上进一步进行压缩,减少了数据内容的容量大小,使得网页在加载时速度更快。
所以brotli的压缩率是最高的,其次是zopfli,最后是deflate。
网友回复
threejs如何引入中文字体json?
FLUX.1 Kontext如何api调用?
腾讯混元模型广场里都是混元模型的垂直小模型,如何api调用?
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?