TCP长连接,并行连接

  • Post author:
  • Post category:其他

目录

访问百度官网有没有复用tcp连接

什么时候会复用tcp连接

并行连接

并行连接可能会提高页面的加载速度,但不一定更快

并行连接可能让人“感觉”更快一些


 

访问百度官网有没有复用tcp连接

有的 一共产生了8个http请求,每一个请求的 请求头中都有 keep alive。告诉服务器不关闭 TCP 连接。

 

什么时候会复用tcp连接

浏览器发送的 http 请求是复用一个 tcp 连接么 – Ever-Lose – 博客园

 

发的同域名,并且是第一个请求完事了才发第二个请求。则看是否有 connection: keep-alive 请求头,没有则不复用。

发的同域名,第一个请求完了后发第二个请求,有 connection: keep-alive 请求头。则复用同一个 TCP 连接。

由于 TCP 协议本身有慢启动的特征,会随着时间调谐连接的最大速度,因此在现代浏览器中持久连接和并行连接通常是搭配在一起使用的—— 一方面由于持久连接的存在,每个 TCP 连接已经处于调谐后的状态,另一方面持久连接可以避免重新三次握手的开销。

并行连接

并行连接

并行连接可能会提高页面的加载速度,但不一定更快

    即使并行连接的速度可能会更快,但并不一定总是更快,因为带宽可能是瓶颈。
    客户端的网络带宽不足时,大部分的时间可能都是用来传送数据的。一个连接到速度较快服务器上的 HTTP 事务很容易耗尽所有可用带宽。如果并行加载多个对象,每个对象都会去竞争这有限的带宽,每个对象都会以较慢的速度按比例加载,这样带来的性能提升就很小,甚至没什么提升。
    实际上,多条连接会产生一些额外的开销,使用并行连接装载整个页面所需的时间很可能比串行下载的时间更长。
    打开大量连接会消耗很多内存资源,从而引发自身的性能问题,尤其是服务器在同时处理大量用户请求时性能会严重下降。
    实际上,浏览器确实使用了并行连接,但它们会将并行连接的总数限制为一个较小的值(通常是 4 个)。服务器可以随意关闭来自特定客户端的超量连接。
 

并行连接可能让人“感觉”更快一些

    即使实际上并行连接并没有加快页面的传输速度,通常也会让用户觉得页面加载得更快了,因为多个组件对象同时出现在屏幕上时,用户能够看到加载的进展。
    随着渐进式图片应用的逐步增加,这种效果就更加明显了。(渐进式图片会先显示低分辨率的近似图形,然后再逐渐增加图片的分辨率。)
 


版权声明:本文为weixin_40757930原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。