有哪些重要的优化措施可以应用于网站,以减少加载时间?
有哪些重要的优化措施可以应用于网站,以减少加载时间?
消除/最小化服务器端的瓶颈。为此,使用像Xdebug或Zend Debugger这样的分析器来查找应用程序执行昂贵和缓慢操作的位置。在可能的情况下实施缓存机制。使用OpCode Cache。如果仍然不够快,请考虑投资更多的CPU、内存或SSD硬盘(取决于您是CPU、IO还是内存受限)。
有关常规服务器/客户端优化,请参见YahooYSlow!用户指南。
它基本上总结为以下内容:
- 最小化HTTP请求
- 使用内容传递网络
- 添加Expires或Cache-Control标头
- 压缩组件
- 将样式表放在顶部
- 将脚本放在底部
- 避免CSS表达式
- 使JavaScript和CSS外部化
- 减少DNS查找
- 压缩JavaScript和CSS
- 避免重定向
- 删除重复的脚本
- 配置ETags
- 使AJAX可缓存
- 使用GET进行AJAX请求
- 减少DOM元素数量
- 没有404错误
- 减小Cookie大小
- 将组件放在无cookie域中
- 避免过滤器
- 不要在HTML中缩放图像
- 使favicon.ico小且可缓存
另请参见下面贡献的评论,因为它们包含其他用户的一些有用信息。
注意:我们作为开发人员通常会首先考虑优化服务器端... 但在大多数情况下,这只占页面加载时间的不到10%!
在服务器端,您通常会想要:
如需更多信息,请参见我之前对此问题给出的答案:优化基于Kohana的网站的速度和可扩展性
在客户端上,最大的收益通常是通过以下方法实现的:
mod_deflate
。一定要考虑缓存,因为与数据库的往返操作成本很高。同时,压缩JS。
如前所述,您可以使用Yslow或PageSpeed Firefox扩展程序。但是您也可以使用GTmetrix,这是一个在线服务,使用两种工具扫描您的页面。
我喜欢/使用的功能:
(顺便说一句,我与gtmetrix无关!)