码迷,mamicode.com
首页 > Web开发 > 详细

http连接过程遇到的各种性能瓶颈

时间:2018-08-24 13:31:22      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:这一   开始   bubuko   alt   自己   握手   nbsp   过程   com   

昨天写了http中的流程,今天针对这个流程,归纳几个可能遇到的性能瓶颈

  1. DNS查询

     域名解析虽然只要一次,本地就会缓存,但是有时候后端的服务可能绑定在二级域名下,这样解析复杂度就上去了,而一些大厂关联的域名可能更多,每一个域名解析都会增加响应时间,更为耗时的是之后还要tcp三次握手,

     对应的昨天流程图中的:

     技术分享图片

  2.建立连接

   这里就是我觉得最为耗时的tcp三次握手了,如果是TLS连接还要加上TLS的网络耗时,除此之外,TLS协议本身还要浏览器和服务器解析,这也是耗时操作,这一部分对应:

   技术分享图片

 

  3.TTFB

    time to first bytes 首字节时间,这个就要服务器响应速度了,以及主页面的资源排布了,对应的地方是

    技术分享图片

 

    注意这个部分算的是往返操作,就是说不单单是客户端的发出,还要算上服务端的响应

  4 TTLB

    请求资源最后到达的的时间

  5 开始渲染时间

    这里开始就是浏览器的部分,浏览器屏幕上开始响应内容的时间,就是用户等待页面的时间,这是这一部分的

    技术分享图片

 

  6.文档加载完成时间

    这一部分就是所有页面资源加载的时间,对应的是

    技术分享图片

  最后,大体上每个链接步骤都是耗时操作,在这篇博文中虽然我把他们分开讲,是为了让我自己分清楚,实际上里面有些概念是子集和父集的概念,例如TTFB时间实际上包含了前面DNS解析和TCP三次握手的时间,和别人装逼的时候一定要注意

  还有一点,上面的每一个资源的增加都会造成性能的下降,例如引用的js文件如果增加,页面加载完成时间也会增加

http连接过程遇到的各种性能瓶颈

标签:这一   开始   bubuko   alt   自己   握手   nbsp   过程   com   

原文地址:https://www.cnblogs.com/qunincey/p/9528791.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!