- 浏览: 316503 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
完善自我:
支持一下!
揭秘IT人才特点:中美印日四国程序员比较 -
悲剧了:
好文,看玩thinking in java的提到的异常处理,看 ...
高效的Java异常处理框架(转) -
yin_bp:
开源框架bbossgroups页支持组件异步方法调用哦,详情请 ...
Spring 3中异步方法调用 -
flyjava:
sun的悲哀
Apache怒了,威胁说要离开JCP
Web性能优化最佳实践中最重要的一条是减少HTTP请求,它也是YSlow中比重最大的一条规则。减少HTTP请求的方案主要有合并JavaScript和CSS文件、CSS Sprites、图像映射(Image Map)和使用Data URI来编码图片。CSS Sprites 和 图像映射现在已经随处可见了,但由于IE6和IE7不支持Data URI以及性能问题,这项技术尚未大量使用。目前大部分网页中的JavaScript和CSS文件数量和开发时一致,少量的网页会根据实际情况采取本地合 并,这些合并中相当多的是有选择地手动完成,每次新的合并都需要重新在本地完成并上传到服务器,比较的随意和繁琐,同样文件的压缩也有类似的情况。而利用 服务端的合并和压缩,我们就可以按照开发的逻辑尽可能让文件的颗粒度变小,利用网页中URL的规则来自动实现文件的合并和压缩,这会相当的灵活和高效。
YUI Combo Handler
2008年7月YUI Team宣布在YAHOO! CDN上对YUI JavaScript组件提供Combo Handler服务。Combo Handler是Yahoo!开发的一个Apache模块,它实现了开发人员简单方便地通过URL来合并JavaScript和CSS文件,从而大大减少 文件请求数。比如在页面上使用YUI2的Rich Text Editor组件需要引入多个JavaScript文件,常用方式如下:
<script src="http://yui.yahooapis.com/2.8.0r4/build/yahoo-dom-event/yahoo-dom-event.js"></script> |
而使用Combo Handler服务之后,则上述的代码可以写为:
<script src="http://yui.yahooapis.com/combo? |
除了代码的可读性稍稍有一点点降低外,使用Combo Handler服务大大的降低了HTTP请求数,同时也减少了URL代码量,这对于Web性能优化来讲至关重要。所以,随后YUI从2.6.0开始,其核 心组件YUI Loader内置了Combo Handling功能,即使用YUI Loader时,通过配置combine属性就可以把要加载的多个JavaScript或CSS文件按照使用Combo Handler服务的形式合并起来,这时只要静态文件的服务器支持Combo Handler就行了。在YUI中当combine配置为true时,CDN默认是使用Yahoo! CDN(http://yui.yahooapis.com),所以没有任何问题。这正是YUI最迷人的地方之一。
遗憾的是http://yui.yahooapis.com在中国的速度并不佳,本来中国雅虎提供http: //cn.yui.yahooapis.com/ ,但尚未提供Combo Handler服务,同时因种种原因,其更新在YUI 2.7.0之后就停滞了。更糟糕的是Yahoo!开发的支持Combo Handler的Apache模块虽然据传有计划开源,但至少现在依旧是私有技术,要使用就需要自己实现类似功能,所以国内类似技术的应用并不太多。
Minify
在Google Code上有一个PHP的开源项目叫Minify,它可以合并、精简、Gzip压缩和缓存JavaScript和CSS文件。其文件合并功能就非常类似 Combo Handler,只不过URL的语法稍微有点不同。如果Yahoo! CDN安装了Minify,那么上面Rich Text Editor的代码用Minify的默认格式来写就是:
<script src="http://yui.yahooapis.com/min/f= |
本地使用Minify很简单,只需要Apache + PHP环境就OK了:
安装好Apache + PHP (Windows、Mac)。
下载Minify源码,解压,然后把min文件夹复制到指定的根目录下,比如localhost。这时URL的写法大概是http://localhost/min/f=。..
启用Apache的Mod Rewrite模块,然后在min文件夹下新建.htaccess文件,并添加如下Rewrite规则:
<IfModule mod_rewrite.c> |
如果不启用Mod Rewrite功能,则Minify的URL会类似http://localhost/min/index.php?f=…,这对客户端和中间服务器的缓 存不利,而启用了Mod Rewrite之后的URL类似http://localhost/min/f=…,不仅解决前面问题且更短。
4. 配置Minify,即编辑min/config.php文件
$min_enableBuilder = true; |
4. 配置Minify,即编辑min/config.php文件
$min_enableBuilder = true; |
转自:http://www.yindaoxian.com/html/web/Javascript_Ajax-13828.html
发表评论
-
Web编程是函数式编程
2010-11-30 13:44 1067任何一位在两个领域里 ... -
如何开发Web应用程序
2010-11-30 13:41 1125这是一个经常被问到的 ... -
设计Web应用程序时要注意可伸缩性
2010-11-26 09:19 940Max Indelicato是一位软件 ... -
Web 2.0应用客户端性能问题十大根源
2010-11-25 20:19 1041Web 2.0应用的推广为用户带来了全新的体验,同时也让开 ... -
HTML压缩(JSP的GZIP实现)
2010-11-24 22:31 4939HTTP 压缩可以大大提高浏览网站的速度,它的 ... -
浏览器加载和渲染html的顺序
2010-11-22 09:45 25791.浏览器加载和渲染html的顺序 1、IE下载的顺序是从上到 ... -
在服务端合并和压缩JavaScript和CSS文件
2010-11-22 09:16 1148Web性能优化最佳实践中最重要的一条是减少HTTP请求 ... -
用 YUI Compressor 压缩和混淆 JS 和 CSS
2010-11-22 09:05 2378一、简介: 目前开发Web应用Javas ... -
如何缓存DWR生成的JS文件
2010-11-18 17:37 1968DWR provides a convenient mec ... -
HTTP状态一览
2010-11-17 22:43 776在网站建设的实际应用中,容易出现很多小小的失误,就像m ... -
两款HTTP流量分析工具的比较:HTTP Watch,Fiddler
2010-11-17 17:26 0做Web开发或者Web分析经常需要查看Http通讯的过程, ... -
了解CSS的查找匹配原理,让CSS更简洁、高效
2010-11-17 16:49 0用了这么多年的CSS,现在才明白CSS的真正匹配原理,不知 ... -
高性能WEB开发 - flush让页面分块,逐步呈现
2010-11-17 16:47 0在处理比较耗时的请求的时候,我们总希望先让用户先 ... -
WEB高性能开发 - 疯狂的HTML压缩
2010-11-17 16:46 0前言: ... -
该如何加载google-analytics(或其他第三方)的JS
2010-11-17 16:44 0很多网站为了获取用户访问网站的统计信息,使用了go ... -
高性能WEB开发 - 页面呈现、重绘、回流。
2010-11-17 15:57 0页面呈现流程 在讨论页面重绘、回流之前。需要 ... -
高性能WEB开发 - JS、CSS的合并、压缩、缓存管理
2010-11-17 15:54 0本篇文章主要讨论下目前JS,CSS 合并、压缩、缓存 ... -
高性能WEB开发- 减少请求,响应的数据量
2010-11-17 15:49 0上一篇中我们说 ... -
高性能WEB开发 - 为什么要减少请求数,如何减少请求数!
2010-11-17 15:42 0http请求头的数据量 我们先分析下 ... -
高性能web开发 - 如何加载JS,JS应该放在什么位置?
2010-11-17 15:39 0外部JS的阻塞下载 所有浏览器在下载JS的时候, ...
相关推荐
JavaScript和CSS文件的合并是前端性能优化的一个常见策略,被称为"文件合并"或"资源打包"。当浏览器加载一个页面时,每个外部资源(如js或css文件)都需要一个单独的HTTP请求,这会增加整体的加载时间。如果一个页面...
在前端开发领域,性能优化是提升用户体验和网站可访问性的重要环节。本资源"前端性能优化:掌握解决方案...."前端性能优化:掌握解决方案.txt"文件很可能会包含更详尽的步骤、工具和实践案例,供读者深入学习和参考。
1. 网络层面优化:优化网络请求的加载速度和响应时间。 - 利用浏览器缓存机制减少服务器请求次数。 - 使用CDN(内容分发网络)来分发静态资源。 - 合并文件(CSS、JS)和压缩资源来减少HTTP请求的数量和大小。 2...
优化措施包括压缩和合并JavaScript文件、使用非阻塞方式加载JavaScript文件、避免在文档加载完成后修改DOM过多等。此外,还可以采用JavaScript懒加载技术,将非核心脚本的加载推迟到用户需要时再执行,从而加快页面...
在前端开发领域,JavaScript 和 CSS 优化是提升网站性能、用户体验和搜索引擎排名的关键技术。中级进阶阶段,开发者需要深入理解这些技术的优化策略,以实现更高效、更流畅的网页应用。 首先,我们来探讨JavaScript...
在ASP.NET MVC4框架中,优化网页性能的一个关键步骤是对JavaScript (js) 和 Cascading Style Sheets (css) 文件进行压缩和合并。这有助于减少HTTP请求的数量,减小文件大小,从而提升网页的加载速度和用户体验。本文...
5. **代码优化**:压缩JavaScript和CSS文件,删除不必要的空格、注释和换行,能显著减小文件大小。还可以通过模块打包工具(如Webpack或Rollup)进行代码分割,只加载必要的代码。 6. **使用CDN**:内容分发网络...
- 这本书可能会涵盖页面加载优化,如合并CSS和JavaScript文件、压缩图片、使用HTTP/2协议等。还会涉及数据库优化,如索引使用、查询优化、数据结构设计等。 5. **前端优化**: - 前端性能优化包括代码分割、懒...
4. **事件委托(Event Delegation)**:通过在父元素上绑定事件,利用事件冒泡机制处理子元素的事件,减少内存占用和性能消耗。 5. **防抖(Debounce)与节流(Throttle)**:防抖用于限制函数在一定时间内执行的...
JavaScript和CSS是网页开发中的核心元素,用于实现动态交互和美化页面样式。然而,未经优化的源代码可能会导致页面加载速度变慢,增加...结合合理的开发流程和性能优化策略,可以显著提高网站的加载速度和整体质量。
总结来说,"Javascript、CSS压缩"是提高网站性能的重要手段,通过使用像AjaxMin这样的工具,开发者能够有效地压缩和优化JavaScript与CSS文件,降低页面加载时间,提升用户体验。而"JS、CSS压缩.exe"这样的本地工具则...
虽然这个主题看似与DivCSS和Web站点性能不直接相关,但`java程序性能优化.pdf`可能探讨了后台处理和数据交互的效率提升,这对整体Web性能也有重要影响。Java优化可能涉及: 1. **算法选择**:采用时间复杂度较低的...
"WEB性能优化实践分析"的主题旨在探讨和分享一系列实用的优化策略和技术,旨在遵循"web优化黄金规则",确保网页快速加载,减少用户等待时间,提高网站的可访问性和可用性。 一、网页性能的重要性 网页性能优化不仅...
1. **合并CSS和JavaScript文件**:减少HTTP请求数是优化性能的重要步骤。如描述中所示,将多个CSS文件合并成一个可以降低网络请求次数,从而减少页面加载时间。例如,codesnippet.css被合并到style.css中,减少了...
网站Web前端优化主要关注提升网页加载速度、用户体验和性能效率,这一领域对于现代互联网产品至关重要。以下是关于Web前端优化的详细说明: 一、关于Web Web作为一种新媒体,它源自印刷业,但随着互联网的发展,Web...
"基于PHP的minify 自动压缩合并JS和CSS(减少请求数)"是一个解决这个问题的方案,它通过合并和压缩JavaScript (JS) 和 Cascading Style Sheets (CSS) 文件来减少网络请求的数量,从而加快页面的加载速度。 1. ...
在Java开发中,压缩JavaScript(js)和CSS(样式表)文件是一项常见的优化技术,用于减少网页加载时间和提高用户体验。这种技术通常被称为“文件合并与压缩”,它将多个js和css文件合并为一个文件,并去除其中不必要...
Web前端性能优化是提高网页加载速度和用户体验的关键因素。Yahoo! 的 Exceptional Performance team 提出了一系列不断更新的优化策略,从最初的13条发展到现在的34条,涵盖了多个角度,包括内容、服务器、Cookie、...
### Web前端性能优化知识点 #### 一、构建优化 **1.1 文件压缩与合并** - **文件压缩**:利用工具如UglifyJS...总之,Web前端性能优化是一个系统性的工程,需要开发人员具备全面的知识体系和实践经验才能有效实施。
通过合并CSS和JavaScript文件,使用CSS精灵图,以及将图标整合到字体图标集中,可以有效减少请求次数。 3. **缓存利用**:正确设置HTTP缓存头可以改善用户体验,尤其是对于常访问的静态资源。浏览器缓存可以减少...