1.减少http请求: 综合文件: 将多个js或css文件合成一个js或css文件。将分割成多个的小图合成为一个大图。虽然总的大小是一样的,但可以减少http请求的次数,减少开销。
2.使用CDN(Content Delivery Network) 使用多个在地理上分布的服务器,让用户去访问其访问速度最快的一个服务器去请求资源。需要考虑的是多个服务器上资源的同步。
3.添加Expire或Cache-Control header 对于不经常修改的资源:例如图片,js文件等,可以为其添加"Expires: Thu, 15 Apr 2010 20:00:00 GMT"等,这样就不必每次都去下载这些资源。如果修改了这些资源,普遍的做法是将这个文件重命名,这样浏览器就会去下载最新的资源了。
4.使用Gzip压缩组建 在页面中添加"Content-Encoding: Gzip",指示将response的内容按"Gzip"进行压缩,浏览器收到response后,会将内容按"Gzip"解压然后显示出来。
5.将CSS文件放在顶部 浏览器显示页面的某部分内容时,是在这部分内容需要的CSS文件全部下载以后才显示。所以将CSS文件放在顶部,首先全部下载下来。这样页面就会从上到下逐渐显示出来,而不会一直是空白状态等待下载相关CSS文件,最后突然全部显示出来。
6.将JS文件放在底部 JS文件导致的问题是会中断并行下载。IE浏览器默认的是可同时在一个主机名下并行的下载两个资源,如果你将图片等放在多个主机名下,浏览器同时可以下载多个资源。但下载JS文件是例外,它会中断并行下载,就算资源在不同的主机名下,下载JS的时候不会再并行下载其他资源。
7.避免使用CSS表达式 background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" );此段表达式可以使背景色每隔一小时变换一次。但这个表达式会执行很多次,例如:鼠标移动时,页面滚动时,窗体移动或改变大小时。影响了效率。
8.将js,css文件外置 如果将js,css代码直接写在页面里面,浏览器每次访问页面时都会下载这些代码,但如果将js,css代码写在单独的文件里,然后在页面里引用这些文件,由于浏览器有cache功能,这些js,css文件不会每次都会下载,提高了速度。
9.减少DNS查找 DNS将域名转换为IP地址,每次域名解析需要花费20-120毫秒。IE浏览器缓存这些DNS30分钟,Firefox浏览器缓存DNS1分钟。尽量减少域名应用会缩减DNS的解析时间,但它会潜在的增加下载的时间(浏览器同时只能从一个域名并行下载两个资源)。因此,指导建议是:将内容分布在2-4个域名上。 http://developer.yahoo.com/performance/rules.html
加速web网站的方法
最新推荐文章于 2016-11-20 14:20:09 发布