zoukankan      html  css  js  c++  java
  • HTTP压缩

    • 听说网站压缩可以提高网站性能,具体是怎么回事呢?
    答:是的,对文件内容进行压缩可以减小内容的大小,从而加快网络传输,提高网页的呈现速度。一般只对文本文件进行压缩,象图片、视频这些已经经过压缩的二进制数据再进行压缩的意义不大,反而会因为压缩消耗了时间而降低了性能。
    客户端是否支持某种压缩编码是通过Accept-Encoding头来控制的,比如Accept-Encoding:gzip说明客户端可以支持gzip压缩编码,
    下面我们还是通过一个栗子来看一下压缩前和压缩后的效果,这次我们使用Fiddler的截获报文并重新发送的功能来作这个试验(试验之前,我们要确保我们的nginx环境已经开启了gzip压缩功能):
    1. 启动Firefox,启动Fiddler
    2. 访问index.html页面
     
    从图中可以看到,浏览器通过Accept-Encoding告知服务器其支持gzip和deflate编码,而服务器通过Content-Encoding头告知浏览器返回的主体内容经过了gzip压缩,压缩后的内容长度是396字节,由于经过压缩,内容如下:
     
    所以客户端得经过解压缩才能还原内容
     
    1. 然后在Fiddler中选中请求,右键->Replay->Reissue and Edit,如下图示:
     
     
     
    1. 在Raw选项卡中,我们把Accept-Encoding的数据删除,注意不要删除其后的回车,
     
     
     
    1. 编辑完比后,点击“Run to Completion"完成请求
     
     
    由图可以看出,未经压缩的主体内容大小为612字节,与index.html原始大小一致
     
     
     
    注意:虽然客户端压缩可以节省网络传输时间,但天下没有免费的午餐,压缩也是要消耗服务器的CPU的,所以正式环境中,还要视具体情况,通过压力测试工具(又到了我们测试人员大显示身手的时候了)实际测试再决定是否需要开户压缩功能。
     
  • 相关阅读:
    622 CircularQueue C#
    x盒子
    Cygwin、MinG、MSys区别与联系(转)
    Spring集成MyBatis完整示例
    mybatis学习 (五) POJO的映射文件
    mybatis学习(四)——config全局配置文件解析
    json字段为null时输出空字符串
    mybatis学习(一)不使用 XML 构建 SqlSessionFactory
    数据库 ----jdbc连接池的弊端
    Spring @Import注解 —— 导入资源
  • 原文地址:https://www.cnblogs.com/lizitest/p/5004848.html
Copyright © 2011-2022 走看看