在配置Nginx的时候,会遇到一个参数就是有关Gzip的。就是要设置Gzip的压缩比率,gzip_comp_level。
默认是2倍,那最佳设置是几倍?
gzip的压缩参数值的范围是从1到9。很多参考资料上写的都是建议用4,那么到底多少合适,为什么呢?
均是默认值的情况下,把这个参数,从1到9,以及关闭gzip的情况都测试了一下,看看传输的数据有多少。
压缩内容主要就是CSS和js文件,以及html文件。
整个页面,包括各种图片,就是这个页面所有的内容的数据传输,简单测试结果如下:
关闭gzip:317KB
gzip压缩参数1:125KB
gzip压缩参数2:121KB
gzip压缩参数3:119KB
gzip压缩参数4:113KB
gzip压缩参数5:111KB
gzip压缩参数6:110KB
gzip压缩参数7:110KB
gzip压缩参数8:110KB
gzip压缩参数9:110KB
又做了一个测试,如下:
还是这个程序,不过我测试的时候,分别记录了几个css文件和js文件的压缩情况。
详细的数据就不贴了,说个总数吧,一共是1个HTML文件,5个CSS文件,4个JS文件,都是数据文件比较大的,也很常见的几个,比如jquery之类的。
在没有开启压缩的情况下,一共是296.6KB,在不同的压缩参数下,其数据量会逐渐减少,从下图来看,可以看出,最左侧的是gzip关闭,就是原始的数据大小,往右就是gzip_comp_level参数从1到9,在参数从5之后,就几乎没有什么变化了。
gzip_comp_level_difference.png点击上图可以看到详细数据,想想还是把具体的数字也分享出来,用的是Google Sheets。
当然随着压缩率的提高,所消耗的CPU也会越来越多,建议值是4,但是DavidYin的建议是直接用5。因为每提高一级压缩,数据就减少大约2到3KB,而从5到6,只有减少大约0.5KB,再之后也几乎没有什么变化了。所以就直接设置gzip_comp_level 5
对于CPU的消耗,我觉得还是不是那么的厉害,毕竟静态文件,还可以设置过期头,让它的有效缓存期长一点,比如设置成半年一年的。实际上CPU的压力在这上面是没有那么大的。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章来源:来自于网络收集。