博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网站优化之Tomcat启用Gzip压缩
阅读量:4156 次
发布时间:2019-05-25

本文共 1367 字,大约阅读时间需要 4 分钟。

博客链接:

Gzip概念

HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP来让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的电脑浏览器中显示出来。即:通过减小HTTP响应大小来减少响应时间。相对于普通的浏览过程HTML ,CSS,Javascript , Text ,它可以节省40%左右的流量。

这样传输就快了,效果就是你点击网址后会很快的显示出来。更为重要的是,它可以对动态生成的,包括CGI、PHP , JSP , ASP , Servlet,SHTML等输出的网页也能进行压缩,压缩效率也很高。当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的。

Tomcat配置Gzip

开启tomcat的Gzip只需修改server.xml配置文件,在Connector中添加下面4个参数即可。

修改为

  1. compression="on" 开启Gzip压缩,默认为off
  2. compressionMinSize="2048"大于2KB的文件才进行压缩,对资源压缩时会消耗一定的cpu性能,对2KB以上的资源才进行压缩是官方给出的建议,实际使用时可以根据需求在响应时间和cpu性能之间做取舍;
  3. noCompressionUserAgents="gozilla, traviata",对于这两种浏览器,不进行压缩
  4. compressableMimeType="text/html,text/xml,application/javascript,text/css,text/plain,text/json"表明支持html、xml、js、css、json等文件格式的压缩

还有其他配置,比如:

 

useSendfile = "false" //useSendfile属性默认为true, 会禁用任何可能的压缩, 改成false就好了(可不配置)tomcat默认设置是当数据大小达到48kb时,将启用文件传输(sendfile),所以我们想要压缩超过48kb的数据时必须将useSendfile设置为false

保存退出,重启Tomcat服务器即可。

但是我重启完发现并没有成功。如果响应头有Content-Encoding: gzip即为成功。

启动Gzip无效的原因

1、如果发现内容没有被压缩,可以考虑调整compressionMinSize大小,如果请求资源小于这个数值,则不会启用压缩。

2、响应数据不是compressableMimeType参数配置的类型。可打开浏览器检查控制台,查看响应头Content-Type的值是否配置在compressableMimeType。

3、tomcat中的配置参数写错位置了,配置错了。

但是我配置是正确的,没有以上的情况

然后经过一番查找,发现是因为我这是加密请求,使用的https,如果是http以上方法即可。https的话需要在port="443"的Connector中也进行压缩配置。如下:

 

复制代码

复制代码

 

保存再重启tomcat,发现已经好了。启用成功!

157854997258812051562.png

去查也有了

 157854987191331071014.png

然后对比下效果还是不错的。

压缩前

157854990766807064236.png

压缩后

 157854994854748049916.png

转载地址:http://smwxi.baihongyu.com/

你可能感兴趣的文章
Tomcat6 进入debug模式
查看>>
jQuery插件开发精品教程,让你的jQuery提升一个台阶
查看>>
js将秒转换为时分秒的格式
查看>>
java对redis的基本操作<转>
查看>>
Redis 存储字符串和对象<转>
查看>>
js操作dom元素的属性和方法
查看>>
弹出层 代码
查看>>
JavaScript中的5种事件使用方式解说(转)
查看>>
jquery开发插件示例
查看>>
<转>《Hadoop基础教程》之初识Hadoop
查看>>
<转>Hadoop入门介绍
查看>>
<转> hadoop学习之hadoop完全分布式集群安装
查看>>
<转>hadoop学习之hadoop集群功能简单测试验证
查看>>
Package 'openssh-server' has no installation candidate 问题解决
查看>>
Ubuntu安装JDK及环境变量配置
查看>>
Hadoop环境搭建
查看>>
【Hadoop】HDFS的运行原理
查看>>
hadoop SecondNamenode详解
查看>>
如何将namenode与SecondaryNameNode分开配置
查看>>
Hadoop datanode添加与删除
查看>>