面试题:为什么要合并 HTTP 请求?有什么好处?

本文探讨了合并HTTP请求的原因,包括减少网络损耗、应对TCP丢包、浏览器线程限制和DNS缓存问题。HTTP 2.0通过全复用和头部压缩解决了HTTP 1.1的并行处理和效率问题,使得合并请求的优势减弱,更多取决于业务需求和服务器配置。总结来说,是否合并请求是一个权衡,取决于传输数据量和服务器处理时间。
摘要由CSDN通过智能技术生成


思考路径:

为什么要实现batch call? -> 减少网络中的传输损耗 -> 如何减少的? -> 通过合并HTTP请求 -> 合并HTTP请求是如何减少网络损耗的?

本文将解决这个问题。一起看看单个请求携载大量信息和多个请求携载小量信息对于整个时间的影响。


1. Client发出请求

1.1 HTTP 1.1

可以保持长连接,但是每个不同的请求之间,client要向server发一个请求头

请求无法并行执行的,在一个连接里面

假设如果不合并的话需要建立N个连接,那么合并就可以省去(N-1)*RTT的时间,RTT指网络延迟(在传输介质中传输所用的时间,即从报文开始进入网络到它开始离开网络之间的时间)。

1.2 TCP丢包问题

慢启动,拥塞控制窗口

TCP报文乱序到达,合并后的文件可以允许队首丢包以后在队中补上来,但是分开资源的时候,前一个资源未加载完成后面的资源是不能加载的,会有更严重的队首阻塞问题,丢包率会严重影响Keep alive情况下多个文件的传输速率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xuxu1116

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值