蓝狮注册登陆JavaScript压缩

当网页浏览器请求一个资源时,它通常发送一个Accept-Encoding的HTTP头(以HTTP/1.1 开始)让网页服务器知道传输所支持的编码类型。此信息主要用于允许文档压缩以获得更快下载速度,从而改善用户体验。Accept-Encoding 的取值范围是:gzip,compress,deflate,蓝狮注册开户和identity(这些值已经在以太网地址分配机构(即IANA)注册)。
如果网页服务器在请求报文中看到这些信息头,它将选择适当的编码方法,并通过Content-Encoding 的HTTP头通知浏览器。
gzip大概是目前最流行的编码格式。它通常可将有效载荷减少到70%,成为提高网页应用性能的有力武器。注意gzip压缩器主要用于文本报文,包括 JavaScript文件。其他文件类型,如图片和PDF文件,不应该使用gzip压缩,因为它们已经压缩,如果试图再次压缩只会浪费服务器资源。
如果您使用Apache网页服务器(目前最流行的),启用gzip压缩功能需要安装并配置mod_gzip模块(针对Apache 1.3,位于http://www.schroepl.net/projekte/mod_gzip/)或者mod_deflate模块(针对Apache 2)。

由Yahoo!搜索和Google 独立完成的最新研究表明,蓝狮注册登陆美国大型网站提供的内容中有大约15%未经过压缩。大多数因为在请求报文中缺少Accept-Encoding 的HTTP头,它被一些公司代理、防火墙、甚至PC安全软件剔除了。虽然gzip压缩是一个惊人的网页开发工具,但还是要注意到这个事实,尽量书写简洁的 代码。另一种技术是提供替代的JavaScript内容,使那些不能受益于gzip压缩的用户,可以使用更简单的用户体验(用户可以选择切换回完整版 本)。
为此,值得提到Packer (http://dean.edwards.name/packer/),由Dean Edwards开发的一个JavaScript紧凑工具。Packer对JavaScript压缩能够超过YUI压缩器的水平。考虑下面对jQuery库的压缩结果(版本1.3.2,下载地址http://www.jquery.com/):

jQuery 120,180 bytes
jQuery + YUI Compressor 56,814 bytes
jQuery + Packer 39,351 bytes
Raw jQuery + gzip34,987 bytes
jQuery + YUI Compressor + gzip19,457 bytes
jQuery + Packer + gzip19,228 bytes
经过gzip压缩之后,jQuery库经过Packer或YUI压缩器产生的结果非常相近。然而,使用Packer压缩文件导致一个固定的运行时代价(在 我的不落后的笔记本电脑上大约是200至300毫秒)。因此,使用YUI压缩器和gzip结合总能给出最佳结果。然而,Packer可用于网速不高或者不 支持gzip压缩的情况,解压缩的代价与下载大量代码的代价相比微不足道。为不同用户提供不同JavaScript的唯一缺点是质量保证成本的增加。

0 Comments
Leave a Reply