HTTP/1.1的性能问题及可优化方案

       当前HTTP/1.1协议已经走过了有20个年头了,面对现代WEB应用,特别移动应用的挑战,设计缺陷问题日益明显,以下将主要列出主要存在的五大问题

  1. 队头阻塞:在大多数情况下,浏览器获取资源都是多份的,HTTP/1.1并没有提供机制来同时请求所有的资源,在仅仅只有一个连接的时候(实际情况,现代浏览器可能针对单个域名建立多个连接,实现某程度并行),它需要发起请求,并等待响应.在这之后再发起下一请求,请求响应.即使HTTP/1.1有一个特性为管道化,允许发送一组请求,但是只能按照发送顺序依次接收响应;如果在请求应答过程中,出现任何的状况,剩下的所有请求都会被出现问题的请求应答之后,这就是"队头阻塞";
  2. 低效的TCP利用:TCP协议作为最可靠的协议之一,其核心就是拥塞窗口[拥塞窗口指的是在接收方确认数据包之前,发送方可以发出]的TCP包的数量];拥塞控制能防止过多的数据注入到网络中,避免网络过载.TCP中可以通过慢启动探索当前连接对应拥塞窗口的合适大小,即发送者发送数据的时候并非一开始注入大量数据到网络中,而是发送一个数据包进行测试,当得到确认回复后,额外发送一个未确认包,即得到一个确认回复,可以发送两个数据包,得到两个确认回复可以发送四个数据包,以几何形式增长便可很快到达协议规定的拥塞窗口规定,这时候连接进入拥塞避免阶段;这种机制需要往返几次才能得知最佳拥塞窗口大小,但往返几次所需的时间成本不可忽略;
  3. 臃肿的消息首部:HTTP/1.1能压缩请求内容,但是消息首部不能压缩;在现今请求中,消息首部占请求
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值