Patrick Killelea写了一本很畅销的书叫"Web Performance Tuning", 里面很全面的介绍了web性能优化的方法和步骤。在web程序开发的过程中,很多项目都把很大的精力都用在了功能实现上,还有一部分用在了UI设计上,对于性能优化却是出了问题才考虑。其实应该从系统的需求和设计开始就着手进行性能的设计,而且放到跟功能一样的地位。
以下是这本书列出的top 10的性能优化技巧:
1. 使用weblint或者其他HTML 检查工具来检查HTML内容是不是符合HTML 4.0规范,符合HTML 4.0规范的页面会加载的更快。
2. 最小化Javascript和Style Sheets的使用,Javascript是不标准HTML内容的最大来源,虽然实现了很多非常炫的效果但是却放缓了页面加载的时间,Style Sheets是需要在页面显示之前单独下载的,所以也会放缓页面的加载速度。
3. 关闭DNS的反向解析,DNS反向解析会记录客户端的计算机名而不仅仅是IP地址, 这样就增加消耗。
4. 使用统计工具来检查你的web系统的性能瓶颈是出在DNS,网络连接,内容大小或者是服务器端,这样就可以从瓶颈处着手提高性能。
5. 使用简单的servlet或者CGI, 在系统不需要的话使用分布式程序反而会减低性能。
6. 加内存, 跟我们使用的电脑一样,加内存往往是成本最低效果最好的提高性能的方法。要知道内存速度比硬盘速度要搞一个数量级的。
7. 合理的给你的数据库加索引,当根据关键字进行全表查询时,加索引会有效的提高查询性能。
8. 最小化数据库查询,如果能把数据缓存到中间层或者servlet的话,just do it, 数据库连接往往是系统的性能瓶颈。
9. 使用网络工具检查网络丢包和重发, 断断续续的系统性能问题一般是因为网络丢包或者干扰。因为丢包和重新发送数据之间有一个时间间隔,这样就会使系统变得缓慢。
10. 使用工具来实时监视网站的性能。