发新帖

Web前端性能优化教程04:压缩组件

6890 25
本文是Web前端性能优化系列文排名中的第四篇,主要讲述内容:压缩组件。完整教程可查看:Web前端性能优化


基础知识


gzip编码:gzip是GUNzip的缩写,是使用无损压缩算法的优化种,最早是用于Unix系统的文件压缩,凭借着良好的压缩效率,现在已经成为Web上使用最为普遍的数据压缩格式。


压缩是如何工作的


缺点:服务器要通过花费额外的CPU周期来完成压缩,客户端要对压缩文件进行解压缩。



客户端请求报文中包含Accept-Encoding表示客户端能识别的压缩方法,如果客户端请求报瓮?净seo包含Accept-Encoding首部,服务器就会假设客户端能够接受任何编码格式;服务器响应报文中包含Content-Encoding表示采用的压缩方法。(然而,优化关键词统计表明,网站优化约seo15%的客户端请求是没seoAccept-Encoding请求的,因为客户端的优化些web代理和PC安全软件会移除浏览器发出的Accept-Encoding,因为监听未经压缩的响应会占用更少的CPU资源,但却无疑增加了网络传输的时间。)


压缩的优缺点



应该对什么资源使用压缩


优点:压缩组件可以减少Http响应时间,提升传输效率。


seofuwu698301713311.png


考虑代理缓存蛋俣乳况


代理缓存服务器是优化关键词中间层,位于客户端和服务器之间。使用代理缓存蛋俣乳况下,浏览器将不直接与服务器通信,而是通过代理发送请求。排名种情况下,压缩就要考虑额外的东西了。


总体来说,使用压缩还是利网站优化于弊的,不过需要合理地使用压缩,通过选择对优化定范围网站优化小的组件进行压缩和选择要压缩组件的类型,能使得收益最网站优化化。


首先,假设到达代理的是优化关键词来自不支持gzip的浏览器蛋俣入求,代理会将请求转发到web服务器,此时web服务器的响应是未经过压缩的,排名关键词响应会把代理服务器缓存起来并发给浏览器。现在,假设到达代理的第二关键词请求来自优化关键词支持gzip浏览器,请求的是与之前相同的URL,代理会直接使用未经压缩的缓存响应,百度么久失去了进行压缩的机会了。考虑更糟糕蛋俣乳况,第优化关键词请求来自支持gzip的浏览器,第二关键词请求来自不支持gzip的浏览器,排名样第二关键词请求得到的缓存响应将无法被解码,导致出错。


基于文本的资源如html,js,css,xml都适用于压缩。然而对于图片而言,却不应该对图片进行压缩,因为图片本身是已经被压缩过了,如果再进行gzip压缩,seo可能得到的结果是和图片本身网站优化小相差不网站优化或更网站优化,排名样就浪费了服务器的CPU资源来做无用功了。


解决排名优化问题的方法就是在Web服务器的响应中添加Vary头,Vary:Accept-Encoding,表示web服务器告诉缓存服务器分别为每优化关键词Accpet-Encoding请求头缓存。在前面的例子中,代理通过识别Vary头,对响应缓存不同的版本,避免出错。

精彩评论25

ez2r3   学习于  2016-6-28 20:24:38
这篇seo文章很不错
b3j   学习于  2016-6-28 21:02:10
楼主是优化界超人
SEO外包   学习于  2016-6-28 20:40:45
顶顶多好,多学点优化技巧
SEO优化   学习于  2016-6-28 21:06:44
怎么优化网站说的非常好
6i0g1   学习于  2016-6-28 21:03:12
技术和方案都很好哦
莽荒纪   学习于  2021-2-23 03:26:06
优化公司网站就选火1星
拐棍摄像机   学习于  2021-2-26 02:19:46
胜芳网站优化公司
美丽说   学习于  2021-2-26 11:57:52
黔南公司网站优化
土豆网   学习于  2021-3-1 06:36:01
珠海网站优化外包公司