ToB企服应用市场:ToB评测及商务社交产业平台

标题: 网站优化之开启tomcat的gzip压缩传输特性 [打印本页]

作者: 麻花痒    时间: 2024-3-19 00:46
标题: 网站优化之开启tomcat的gzip压缩传输特性
本文于2015年底完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。
基于tomcat 8.0.x版本的文档,可以了解到tomcat支持基于gzip实现的压缩返回数据的特性。
配置方法

最简单的配置样例如下:
  1. [/code]关于启用gzip压缩传输特性,tomcat 8.0.x版本提供了如下几个参数:
  2. [list]
  3. [*]compression,默认值为off。可能的取值有:
  4. [list]
  5. [*]on,启用压缩传输特性;
  6. [*]off,关闭压缩的特性;
  7. [*]force,表示无条件启用压缩特性;
  8. [*]正整数,启用压缩传输特性,同时指定了压缩操作门限值,当传输数据量超出门限时,tomcat即对传输数据执行压缩。
  9. [/list]当tomcat无法预先得知待传输数据的具体长度,而compression被设置为on,则tomcat自动压缩传输数据。
  10. [*]compressionMinSize,默认值是2048,即2KB,当传输的数据量大于2KB时,tomcat自动将待传输的数据执行压缩。
  11. [*]compressableMimeType,默认值为text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,基本上涵盖了当前能遇到的文件类型。
  12. [*]noCompressionUserAgents,默认值为空字符串,即不限制。tomcat将本配置的值当成正则表达式来使用,用来判定是否向特定的浏览器传输压缩数据,比如配置为"gozilla",则遇到UserAgent类型为gozilla的浏览器,则不对返回的数据执行压缩。
  13. [/list][size=6]确认gzip已启用的方法[/size]
  14. 使用抓包工具或者浏览器的调试工具监控页面请求过程中的网络交互情况,重点检查tomcat返回浏览器的页面响应头部,可以发现gzip压缩传输启用前、后的差异。
  15. [list]
  16. [*]启用前
  17. [code]  Content-Length:1014
  18.   Content-Type:text/html;charset=UTF-8
  19.   Date:Sat, 14 Nov 2015 14:34:36 GMT
  20.   Server:Apache-Coyote/1.1
复制代码
  • 启用后
    1.   Content-Encoding:gzip
    2.   Content-Type:text/html;charset=UTF-8
    3.   Date:Sat, 14 Nov 2015 14:37:34 GMT
    4.   Server:Apache-Coyote/1.1
    5.   Transfer-Encoding:chunked
    6.   Vary:Accept-Encoding
    复制代码
    因此使用抓包工具或者使用浏览器的调试工具观察HTTP交互数据时,如果发现响应头部的报文中带有如下三部分头部信息,基本上可以确认Web系统的tomcat已启用了gzip压缩传输的特性。
    注意事项

    参考资料


    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




    欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4