web前端培训
搜索分类

前端培训面试题分析-HTTP持久化和管线化

赋能网 2023-06-14 176

出现背景: HTTP 最初的版本中,每进行一次 HTTP 通信,就要断开一次 TCP 连接(无连接)
为解决上述问题,HTTP/1.1 增加了持久连接(HTTP Persistent Connections )的方法,其特点是,只要一方未明确提出断开连接,则另一方保持 TCP 连接状态

HTTP 1.1版本支持持久连接 1.0版本不支持

与非持久连接的区别:

1、持久连接使客户端到服务器端连接持续有效,避免了重新建立连接

2、大大减少了连接的建立以及关闭时延。HTTP连接是建立在TCP协议之上的,建立一条TCP连接需要三次握手,TCP连接关闭时需要四次挥手。这些都是需要时间的

管线化:是指将多个 HTTP 请求整批发送,在发送过程中不用等待对方响应
管线化是在持久连接的基础上实现的,管线化的实现,能够同时并行发送多个请求,而不需要一个接一个的等待响应

1. 那么持久连接和管线化的区别在于:

持久连接的一个缺点是请求和响应式是顺序执行的,只有在请求1的响应收到之后,才会发送请求2,而管线化不需要等待上一次请求得到响应就可以进行下一次请求。实现并行发送请求。 

  2. 只有GET和HEAD要求可以进行管线化,而POST则有所限制

  3. 初次创建连接时也不应启动管线机制,因为对方(服务器)不一定支持HTTP/1.1版本的协议。

       4.HTTP1.1要求服务器端支持管线化,但并不要求服务器端也对响应进行管线化处理,只是要求对于管线化的请求不失败,而且现在很多服务器端和代理程序对管线化的支持并不好,现代浏览器Chrome和Firefox默认并未开启管线化支持。

赋能网前端培训


相关: 【大数据培训】Spark面试知识点总结,大数据面试必备指南_前端培训-页面重构如何操作

发表评论
0评