我们大多数网站都是启用的 gzip 来进行 资源传输的压缩,这有利于我们更加快速的访问我们的网站;但是除了 gzip 外,我们或许还有别的选项,而且性能会更好,比如 google开发的 Brotli 算法;
与常见的通用压缩算法不同,Brotli使用一个预定义的120千字节字典。该字典包含超过13000个常用单词、短语和其他子字符串,这些来自一个文本和HTML文档的大型语料库。预定义的算法可以提升较小文件的压缩密度。
对全球1000个访问量比较大的地址进行测试,使用 Brotli 算法可以得到明显的性能改善:
使用brotli取代deflate来对文本文件压缩通常可以增加20%的压缩密度,而压缩与解压缩速度则大致不变。
可能有些浏览器不支持 Brotli 压缩的会自动降级使用 gzip压缩,所以原有的gzip压缩配置要保留;另外,brotli算法只会在https协议下生效,在http协议下不生效,在http协议下即使配置了Brotli ,也还是使用gzip压缩算法。
ngx_brotli 配置有如下指令:
1、brotli
是否启用 Brotli on 为开启 off 为关闭
2、brotli_types
允许的压缩 mime 类型比如 text/css, text/javascript
3、brotli complevel
压缩级别 可选值范围为0~11,默认值为6
安装