HTTP?GZIP压缩作为HTTP/1.1协议的一个建议,旨在让服务器在向客户端发送响应的时候,压缩响应的内容,从而节约带宽,提高网络的传输特性。
?
????????在主流的服务器中,都加入了对HTTP压缩的支持,在JBoss中,打开${JBOSS.HOME}\server\default\deploy\jbossweb.sar\server.xml,在Connector节点中增加compression="on"即可使得JBoss支持HTTP压缩。来自:神虎网http://www.shenhoo.com
Xml代码?;
class="xml" name="code"><Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}" connectionTimeout="20000" minThreds="6" compression="on" redirectPort="8443" /> <Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}" connectionTimeout="20000" minThreds="6" compression="on" redirectPort="8443" />
????下面以一个简单的例子来说明HTTP压缩对于系统性能的影响,首先JBoss服务器启用HTTP压缩,启动JBoss应用服务器,访问http://localhost:8080/jmx-console,通过Firebug可以看到访问此页面时,服务器返回的数据大小以及响应时间:
?
可以看到,服务器端返回的数据大小为30.3KB,总共耗时442ms,现在关闭JBoss的HTTP压缩,重新访问jmx-console,服务器的响应如下图所示:
?
服务器端返回的数据大小为252.3kB,总计耗时824ms。
?
对比两次的测试,可以看出两次响应产生的网络流量差距是非常大的,压缩比达到了88%,但是响应时间却增加了46%,这主要是因为在服务器端压缩数据,在客户端解压数据产生的时间消耗。来自:神虎网http://www.shenhoo.com
?
通常在配置HTTP压缩时一些比较好的做法是:压缩文本文件,例如html,?css,?js文件,不要压缩多媒体文件例如图片,flash,音频文件;
?