首页 > 其他 > 详细

关于前端性能优化

时间:2015-11-12 20:14:29      阅读:296      评论:0      收藏:0      [点我收藏+]

我们先来看一张图来确定一下页面性能是由哪些部分组成的

  技术分享

  域名解析:搜索DNS服务器并解析域名IP所花费的时间,为5.864ms

  建立链接:客户端通过ip地址与web服务器建立链接的时间,为48.275ms

  发送请求:客户端向web服务器端发送请求所花费的时间,为0.620ms

  等待响应:服务器端从接受http请求到开始响应客户端内容所花费的时间,为273.078ms,这段时间包括数据查询,页面转换为html格式等

  接收数据:服务器端的响应内容全部发送到客服端的时间,为4.55ms

初步诊断网站性能瓶颈:

  1.首先看一下那个请求花费时间最长,看看这个请求的时间线信息,来确定是服务器端响应慢了还是网络问题

  2.如果每个请求花费的时间都没有明显高于其他,那就检查一下是不是这个页面发送的http请求次数过多了。因为浏览器对单个域名的并发连接数有限制的,需要处理完一批请求之后,在发送另外一批请求。假如页面有100个请求,每个请求花费时间为1s,浏览器最大并发数显示为10,那么处理完所有请求花费时间为100/10*1s=10s的时间。

关于最大并发数,http1.1的标准是2,而目前主流的浏览器IE、FireFox、Chrome为了提高速度,分别是10,6,6(根据具体版本可能会有变动)

前端性能策略:

   一项专门研究网页性能的工程师发现,一个页面从请求到加载完成,80%的时间都花在了前端上。事实也是如此,大多数时间都花费在获取前端静态文件(html,css,js)上,所以优化网站应该从前端性能着手

高性能的Html:

  1.避免空连接

    什么是空连接?空链接指的就是img,a,script,link,iframe等的src或者href,如(href=""),一般浏览器会把它解析为blank,但是IE还是会发送请求的。

  2.避免标签的深层次嵌套

    层次越多的节点,在初始化构建时候所占用内存越大

  3.减小html文档大小

    删除对文本无影响的换行,空格或者注释,所以大多数网站上线前都会压缩文件,就是为了减小文件大小

  4.避免脚本阻塞加载

    浏览器在解析常规script标签时候,会先等待js下载完毕,在执行后边的html代码,所以最好的建议是把script放在页面的底部

高性能的Css:

  1.使用css压缩

    什么是空连接?空链接指的就是img,a,script,link,iframe等的src或者href,如(href=""),一般浏览器会把它解析为blank,但是IE还是会发送请求的。

  2.抽离,拆分css,不加载所有css

    层次越多的节点,在初始化构建时候所占用内存越大

  3.使用css sprites

    删除对文本无影响的换行,空格或者注释,所以大多数网站上线前都会压缩文件,就是为了减小文件大小

  4.css放在head中

    浏览器在解析常规script标签时候,会先等待js下载完毕,在执行后边的html代码,所以最好的建议是把script放在页面的底部

 

关于前端性能优化

原文:http://www.cnblogs.com/MangoGirl/p/4959971.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!