Tomcat性能优化之(一) 启动GZIP压缩
2013-07-01 20:04
645 查看
Tomcat性能优化之(一) 启动GZIP压缩
1:设置TOMCAT启用GZIP压缩,通过浏览器HTTP访问对应的资源会根据配置进行压缩。
从上面节点的属性可以看出,要使用GZIP压缩功能,你需要在Connector节点中加上如下属性:
compression="on" 启动压缩功能。
compressionMinSize="2048"设置启动压缩文件的最小值,也就是说当请求的资源大小 大于该值时才启动压缩 默认2048byte 也就是2KB。
noCompressionUserAgents="gozilla, traviata" 设置不启动压缩的浏览器 该内容会在http请求头中找到。
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 设置哪些mime格式的资源需要压缩,具体格式可以再tomcat/conf/web.xml中找到。
上面的配置是专门针对Tomcat基于Http协议连接器(Connector)的配置,也就是只有当用户直接通过浏览器直接访问Tomcat时,Tomcat才会针对配置进行GZIP压缩。
如果我们的应用服务器是Apache+Tomcat集成的话,上面的配置就不起作用了,因为用户是通过浏览器访问Apache服务器,Apache服务器在转发请求到Tomcat去处理,他俩之间数据传输走的是另外一个连接器(Connector)[<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>],但是AJP协议目前貌似还不支持GZIP的配置,所以我们只要自己扩展GZIP的压缩。
扩展的代码我们已经不需要去实现了,已经有现成的开源框架了,直接拿来用就可以了,【pjl-comp-filter-1.8.1.jar】
然后配置一下WEB.XML就可以了。
还有一些其他的配置可以参考官方文档,在这里不一一说明了,还有就是对图片资源一般不启用GZIP压缩,因为他们已经采用高压算法了,在压缩没有意义反而会白白消耗服务器端的资源。
1:设置TOMCAT启用GZIP压缩,通过浏览器HTTP访问对应的资源会根据配置进行压缩。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" executor="tomcatThreadPool" URIEncoding="utf-8" compression="on" compressionMinSize="50" noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />
从上面节点的属性可以看出,要使用GZIP压缩功能,你需要在Connector节点中加上如下属性:
compression="on" 启动压缩功能。
compressionMinSize="2048"设置启动压缩文件的最小值,也就是说当请求的资源大小 大于该值时才启动压缩 默认2048byte 也就是2KB。
noCompressionUserAgents="gozilla, traviata" 设置不启动压缩的浏览器 该内容会在http请求头中找到。
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 设置哪些mime格式的资源需要压缩,具体格式可以再tomcat/conf/web.xml中找到。
上面的配置是专门针对Tomcat基于Http协议连接器(Connector)的配置,也就是只有当用户直接通过浏览器直接访问Tomcat时,Tomcat才会针对配置进行GZIP压缩。
如果我们的应用服务器是Apache+Tomcat集成的话,上面的配置就不起作用了,因为用户是通过浏览器访问Apache服务器,Apache服务器在转发请求到Tomcat去处理,他俩之间数据传输走的是另外一个连接器(Connector)[<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>],但是AJP协议目前貌似还不支持GZIP的配置,所以我们只要自己扩展GZIP的压缩。
扩展的代码我们已经不需要去实现了,已经有现成的开源框架了,直接拿来用就可以了,【pjl-comp-filter-1.8.1.jar】
然后配置一下WEB.XML就可以了。
<filter> <filter-name>CompressingFilter</filter-name> <filter-class>com.planetj.servlet.filter.compression.CompressingFilter</filter-class> <init-param> <param-name>compressionThreshold</param-name><!-- 资源大小超过100byte的就被压缩 --> <param-value>100</param-value> </init-param> <init-param> <param-name>includeContentTypes</param-name><!-- 启动GZIP压缩的MIME类型 --> <param-value>text/html,text/xml,text/javascript,text/css,text/plain</param-value> </init-param> </filter> <filter-mapping> <filter-name>CompressingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
还有一些其他的配置可以参考官方文档,在这里不一一说明了,还有就是对图片资源一般不启用GZIP压缩,因为他们已经采用高压算法了,在压缩没有意义反而会白白消耗服务器端的资源。
相关文章推荐
- Tomcat8启用gzip压缩实现网页性能优化
- 网站性能优化(1)之启用Gzip 压缩
- tomcat 启用Gzip 压缩进行优化
- tomcat 启用Gzip 压缩进行优化
- WEB性能优化之GZIP压缩
- web应用性能优化--采用gzip静态压缩+动态压缩方式压缩js、css文件
- 网站优化之设置tomcat7开启Gzip压缩
- tomcat 优化之gzip压缩
- 【nginx网站性能优化篇(1)】gzip压缩与expire浏览器缓存
- tomcat 启用Gzip 压缩进行优化
- Tomcat性能优化(二) 启动参数设置
- Apache性能优化–开启gzip压缩
- web性能优化之GZIP压缩
- Apache性能优化--启用gzip压缩
- tomcat开启了gzip性能优化
- apache性能优化之启用gzip压缩
- Tomcat8.0.22 启动gzip压缩
- 理解Tomcat架构、启动流程及其性能优化
- 在IIS中设置Gzip页面压缩 优化网站的性能
- tomcat 启用Gzip 压缩进行优化