系统性能优化总结之表现层(1)

对系统性能的考虑,是一个新手和老手的重要区别之一,面试的时候,问一些性能优化的问题,很容易判断应聘者的工作经验。下面是我对性能优化的考虑,将从表现层、业务层、技术层三个大的方面来阐述。本篇先介绍表现层性能优化要点。
表现层优化的一个重要原则是减少向服务器发送请求的次数以及减少每次请求的数据传输量 ,围绕这一点,将会想到有很多的优化办法。

  • ajax:大家都知道,ajax可以实现局部更新,显然减少了数据通讯量以及请求次数(全页面刷新,页面上的很多资源都要进行请求哦),而且ajax可以增强客户体验;
  • 减少图片文件大小,这个是减少数据通讯量的方法,可用png之类较小的文件存盘格式;
  • 使 用css对图片分割,把多个地方的小图标集成到一张图片上来。比如:.zhu{background:url("../img/shenxiao /sx.png") no-repeat scroll 0 -528px transparent;},注意其中的0 -528处,是关键;
  • 减 少css与js文件的数据,最好不要按照页面逻辑将文件划分成多个,以减少请求次数;在同一个文件中,也要想法减少文件大小,多余的空格,回车,在项目上 线前都要去掉,我曾经见过一些网站,就一个css文件,打开,里面只有一行,这一行非常的长,可见,边回车换行都已经被删除了,呵呵。再有,js文件上线 前要找个工具压缩一下,文件大小一般会减少一半以上;
  • 从程序上,对页面进行静态化处理(页面静态化处理的详细内容我将在后面的博客中介绍)。
  • 对页面进行缓存,squid开源产品居多,oscache也是可以的。
  • 如果是jsp,可以考虑更换成其它的模板框架,比如:velocity,freemarker等,一来可以提高页面响应速度,还可以强制程序员按model2书写页面交互。
  • 根据实际情况选择合适的数据通讯方式,json,xml,或者是服务器拼好页面再发往客户端。
  • 合理利用好浏览器缓存。但有的时候,是禁止缓存的哦,比如一些ajax操作中。
  • 启用服务器gzip压缩。

当然,条条大道通罗马,以“减少向服务器发送请求的次数以及减少每次请求的数据传输量 ”为优化核心,办法还是很多的。

猜你喜欢

转载自ljh2008.iteye.com/blog/832619