页面级别性能测试分析
我之前的文章已经说过了,我把性能分为三个级别的,这次咱们说下页面级别的测试与调优,下面就以一个实例来说明。
现象:
1、公司网站在有活动期间异常的慢,而后端流量没什么诡异表现
2、平常页面表现比较正常,速度也比较快
测试:
对于性能测试来说,我个人觉得,除了基本的知识和能力外,最有说服力的就是数据+对比。因此大致思路可以是这样的:挑选一类的几个网站相同的页面做对比分析,包括total requests,total time,total bytes received等等指标。
那么如何测试呢?这时候就需要借助于工具和脚本了,我们有两种方式:
a、httpwatch
b、自己开发的一个测试页面的框架,能统计出js渲染,第一屏,以及全部打开等等各个数据,很多。。。。。
分析:
出来数据对比后,就需要好好分析了,对异常的或者和其他网站比起来差的地方深入分析。我们对比后发现requests,time等指标都高于同类网站,但具体的位置无法定位,那怎么办呢?
这时候我们利用yslow+showslow即可达到意想不到的效果,经过再次全面测试发现,原来我们的与域名无关性的cookie和experis的指标非常的低,但是明明静态资源像图片什么的都放到了二级域名里了啊,怎么回事呢?
这里需要指出的是,如果你的域名采用了泛解析,那么放入二级域名是无效的,仍然会发送cookie的URL浪费时间和带宽。
解决方案:
既然发现问了,那我们就解决!!!稍等,其实在这之前你要先和运维的童鞋确认下更保险。
解决方法也简单,那就是在买个域名,来部署就ok了。
结果:
重新部署完后+优化了experis的利用后,前端网页性能大大提升。
小结:
性能测试不仅仅是关注后端的,前端同样重要,这就是水桶原理,取决于短的那个木板,国内对前端性能测试还不是太重视,实际中我在努力推行,保证每个层级的性能都能到达合适的程度,这样网站的整体性能才会上来。