Web前端分析测试要点
1、减少HTTP请求的数量
2、用好浏览器缓存机制
3、利用GZIP压缩机制,只针对文本类资源有效
4、把CSS文件放在HTML的开头
5、把JavaScript文件放在HTML的结尾
6、避免CSS表达式
7、减少DNS查找:把域名解析成IP地址(dns就是把域名解析成ip地址,例如:www.baidu.com;www.tieba.com这些都是不同的域名)。
8、最好使用JavaScript压缩,var username;var u
9、避免重定向redirect http://www.baidu.com/index.php这些加粗的,加上这些就会减少重定向的过程。(用户输入的过程我们是无法控制的,但是页面中的超连接,例如百度首页中的新闻,news.baidu.com/这个是我们可以避免的)。
10、 去除重复脚本
11、 使用Ajax请求:即局部刷新。Ajax可以是网页进行异步更新,这意味着可以在不重新加载某个网页的情况下,对网页的某部分进行更新。
12、 使用CDN(不是技术可控的,只是它也关系着浏览器速度的快慢)。
利用HTTPWatch进行前端分析之 ——Time chart(性能)详细解析
blocked是指浏览器预处理的时间,主要包括缓存查找的时间和浏览器等待一个可用的网络连接(比如在IE浏览器中,针对一个相同的域名只会创建两个并发的网络连接即两个线程,所有会有请求需要等待一段时间,线程资源可能会在访问其他的请求)
start是开始的时间,但是strat+duration不一定等于下一个start,因为有两个线程同步的进行
DNS LookUp dns 域名解析,会优先使用本地的路由器(默认),如果要自动设置可以在网卡里面有一项叫DNS服务器的设置。DNS解析只会进行一次,因为解析完之后会保存在我们的内存当中,除非我们关闭浏览器重启,数据消失,否则在整个浏览器生命周期中都不会重新解析
connect连接花费的时间,也包括https三次握手的时间
send的时间很短,即把请求发给服务器发完所用的时间
http watch看浏览器的服务器端的好坏只看wait的时间,其他时间是跟网络有关系的。
在time chat中。
wait的时间基本决定里服务器处理的时间(因为还有网络传输的时间,按经验来看就是wait*0.9=服务器处理时间),请求发送完到接受响应第一个字节所用的时间
http请求数量优化:
- 减少重定向请求。
- 减少预处理的时间。
- 减少tcp连接的时间
- 减少发送请求的时间。减少服务器端硬盘io的时间。
- 减少发送请求的时间。
- 减少浏览器渲染的时间。
文本类资源压缩情况:
Html css JavaScript 其他文本内容。
方法;1.减少内容本身的大小。(空格,tab键等不可见字符 注释 变量或则函数名使用短名称)
2.使用gzip在传输过程中压缩。(百度与csdn对比,百度做的更好)。
其他:
1.缓存(在HTTP watch的stream中,控制的主要是cache-control,expires这两个,缓存时间都可以在开发中设定)。