`

使用Tomcat的gzip功能(压缩请求)

阅读更多

今天项目中有一些大数据需要进行http传送,这样数据量一大,服务端的压力可想而知。于是老大提出可以采用gzip技术来解决。

这个技术旨将在服务端需要输出到客户端的数据信息使用Gzip方式进行压缩,然后再传输到客户端,客户端接收到数据后会自动解压并输出,它的好处是可以减少网页下载的数据量,降低网络负载,提高网页输出到客户端的速度,而Gzip技术几乎是目前所有浏览器都支持的,包括IE6。

 

找到tomcat/conf/server.xml中protocol="HTTP/1.1"的Connector的节点(也就是配置tomcat访问端口8080的那个节点)

配置gzip的属性有4个,分别如下:
compression:  off/on/force(不启用/启用压缩文本内容/强制压缩所有请求包含图片)
compressableMimeType: "text/html,text/xml,text/plain"(这是默认值,指定需要压缩的请求文档类型)
noCompressionUserAgents: 指定不需要压缩的浏览器Agent,使用逗号间隔
compressionMinSize: 2048 对小于该配置大小的文件不进行压缩(单位:B,也就是默认是2K)。注该属性自Tomcat7中有效

完整配置如下:

<Connector port="8888" protocol="HTTP/1.1" 
               connectionTimeout="21000" 
               redirectPort="28080" 
               URIEncoding="UTF-8"
               compression="on"  
               compressionMinSize="50"
               noCompressionUserAgents="gozilla, traviata"  
               [color=#000][font=Helvetica, Tahoma, Arial, sans-serif]compressionMinSize = “2048”[/font][/color]
               compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />

然后请求tomcat,头信息中Accept-Encoding节点中包括了gzip就说明可以用了
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics