(转)使用tomcat的compression来提高网页加载速度
2010-09-19 22:17
447 查看
(原文)http://www.blogjava.net/freeman1984/archive/2010/09/15/332121.html
当网站从服器端请求的数据较大时,在有限的带宽下就会造成浏览器加载缓慢,有时候会造成页面没有响应,使用户体验变得很差,tomcat为我们提供了有效的解决了办法,就是使用压缩来解决传输问题。
tomcat使用HTTP/1.1 GZIP 来压缩,以减少带宽压力,
首先介绍下gzip:
HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的电脑浏览器中显示出来.一般对纯文本内容可压缩到原大小的40%.这样传输就快了,效果就是你点击网址后会很快的显示出来.当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的.
我们使用简单的例子来介绍tomcat的压缩使用:(使用firebug查看请求情况)
首先是一个简单的servlet:
内容:
启动后再看:
这次数据被压缩到274.7k,响应速度也减少了一半,当然,服务器的数据压缩和浏览器的数据解压都需要使用时间。
当网站从服器端请求的数据较大时,在有限的带宽下就会造成浏览器加载缓慢,有时候会造成页面没有响应,使用户体验变得很差,tomcat为我们提供了有效的解决了办法,就是使用压缩来解决传输问题。
tomcat使用HTTP/1.1 GZIP 来压缩,以减少带宽压力,
首先介绍下gzip:
HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术。大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度。这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的网站时,服务器中的这个功能就将网页内容压缩后传输到来访的电脑浏览器中显示出来.一般对纯文本内容可压缩到原大小的40%.这样传输就快了,效果就是你点击网址后会很快的显示出来.当然这也会增加服务器的负载. 一般服务器中都安装有这个功能模块的.
我们使用简单的例子来介绍tomcat的压缩使用:(使用firebug查看请求情况)
首先是一个简单的servlet:
内容:
我们将输出一个十万个选项的下拉框,在不使用的压缩的时候: 请求数据达到9m ,大概的计算下我的下载用时(4m长城宽带):9*1024/(4*1024/8)=18m ,加上多人共享带宽,也就是差不多20m。firebug显示20.96。这个速度网站体验肯定是很差的,接下来使用tomcat的压缩以后看看: 当然是要对其进行配置,有以下几个参数可以使用: 1. compression="on" 是否启用压缩 on为启用(文本数据压缩) off为不启用, force 压缩所有数据 2. compressionMinSize1="2048" 当超过最小数据大小才进行压缩 3. noCompressionUserAgents="gozilla, traviata" 哪些客户端发出的请求不压缩,默认是不限制 4. compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" 配置想压缩的数据类型,默认是text/html,text/xml,text/plain配置以后是这样的:
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
compression="on"
compressionMinSize1="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"/>
启动后再看:
这次数据被压缩到274.7k,响应速度也减少了一半,当然,服务器的数据压缩和浏览器的数据解压都需要使用时间。
相关文章推荐
- 使用tomcat的compression来提高网页加载速度
- 使用tomcat的compression来提高网页加载速度
- 使用tomcat的compression来提高网页加载速度
- 使用tomcat的compression来提高网页加载速度
- [转贴]使用GZIP缓存技术提高网页加载速度
- Windows下使用apache模块实现合并多个js、css提高网页加载速度
- 如何使用js懒加载图片|如何使用jquery.lazyload.js|网页优化|如何提高网页加载速度
- 如何使用js懒加载图片|如何使用jquery.lazyload.js|网页优化|如何提高网页加载速度
- 揭秘谷歌 AMP 项目:它是如何提高网页加载速度的?
- 在前端,如何提高网页的加载速度,用pagespeed的测试结果
- 【转】使用jquery实现图片预加载提高页面加载速度和用户体验
- 提高网页的加载速度浅析
- 【代码优化】如何提高网页加载速度
- 如何提高网页加载速度(一)
- 如何提高网页的加载速度
- DEDE让广告延时加载显示,大大提高网页访问的速度
- 如何提高网页页面加载速度
- AngularJs在使用路由时采用ocLazyLoad进行按需加载提高页面加载速度
- 提高网页加载速度最简单的5种方式
- 使用简洁的 Navigation Timing API 测试网页加载速度(不完全译文)