雅虎前端优化十四条

摘自:http://blog.sina.com.cn/s/blog_74d6cedd0100vbu4.html

1. 尽可能的减少 HTTP 的请求数 [content]
合并背景图、缓存等

2. 使用 CDN(Content Delivery Network) [server]
也是缓存,加速,要考虑CDN失效、CDN缓存攻击等

3. 添加 Expires 头(或者 Cache-control ) [server]
会引起静态资源更新的问题,可采用somescript.js?v=1.0的方式来解决,但在发布新版本的时候会引起短暂页面错误。更好的办法是采用hash冗余。例如新版的index.html中引用到的脚本以其内容hash后命名为:somescript_a21b3c.js,可避免新版发布时页面错误的问题。后者的难点在于如何为全站引用到相关静态资源的页面修改引用链接

4. Gzip 组件 [server]
5. 将 CSS 样式放在页面的上方 [css]

6. 将脚本移动到底部(包括内联的) [javascript]
HTTP/1.1规范建议浏览器每个主机的并行下载数不超过2个(IE只能为2个,其他浏览器如ff等都 是默认设置为2个,不过新出的ie8可以达6个)。因此如果您把图像文件分布到多台机器的话,您可以达到超过2个的并行下载。但是当脚本文件下载时,浏览 器不会启动其他的并行下载。

7. 避免使用 CSS 中的 Expressions [css]
8. 将 JavaScript 和 CSS 独立成外部文件 [javascript] [css]
可减少页面大小,配合缓存可减少http访问次数,也易于维护。不过据说yahoo建议首页是内嵌~~

9. 减少 DNS 查询 [content]
减少dns查询时间

10. 压缩 JavaScript 和 CSS (包括内联的) [javascript] [css]
也是减少传输体积

11. 避免重定向 [server]
重定向明显就多了一次请求,响应变慢。特别注意:
http://domain/somepath/subpath
http://domain/somepath/subpath/
一些服务器配置的情况下,前者会造成重定向

12. 移除重复的脚本 [javascript]

13. 配置实体标签(ETags) [css]
不懂,引文:http://www.kuqin.com/web/20080513/8442.html

14. 使 AJAX 缓存

猜你喜欢

转载自cnflat.iteye.com/blog/2098346