开发部分阶段
开发和部署过程对基于JavaScript 的应用程序可以产生巨大影响,最重要的几个步骤如下:
- 合并JavaScript 文件,减少HTTP 请求的数量
- 使用YUI 压缩器紧凑处理JavaScript 文件
- 以压缩形式提供JavaScript 文件(gzip 编码)
- 通过设置HTTP 响应报文头使JavaScript 文件可缓存,通过向文件名附加时间戳解决缓存问题
- 使用CDN 提供JavaScript 文件,CDN 不仅可以提高性能,它还可以为你管理压缩和缓存
上述所有步骤应当自动完成,不论是使用公开的开发者工具诸如Apache Ant,还是使用自定义的开发工具以实现特定需求。如果你使用这些开发工具为你服务,你可以极大改善那些大量使用JavaScript 代码的网页应用或网站的性能。
分析阶段
当网页或应用程序变慢时,分析网上传来的资源,分析脚本的运行性能,使你能够集中精力在那些需要努力优化的地方。
- 使用网络分析器(network analyzer)找出加载脚本和其它页面资源的瓶颈所在,这有助于决定哪些脚本需要延迟加载,或者进行进一步分析。
- 传统的智慧告诉我们应尽量减少 HTTP 请求的数量,尽量延迟加载脚本以使页面渲染速度更快,向用户提供更好的整体体验。
- 使用性能分析器(profile)找出脚本运行时速度慢的部分,检查每个函数所花费的时间,以及函数被调用的次数,通过调用栈自身提供的一些线索来找出哪些地方应当努力优化。
- 虽然花费时间和调用次数通常是数据中最有价值的点,还是应当仔细察看函数的调用过程,可能发现其它优化方法。
这些工具在那些现代代码所要运行的编程环境中不再神秘。在开始优化工作之前使用它们,确保开发时间用在解决问题的刀刃上。
参考文档
1.《高性能JavaScript》