概述

  • 优点:简单、灵活、便于扩展、应用广泛
  • 缺点
    • 无状态
      • 服务器无法关联操作
    • 明文传输
    • 不安全
      • 使用明文传输,内容可能被窃听
      • 无法验证通信方的身份
      • 报文可能已经被篡改

HTTP/1.1 的性能

HTTP 协议是基于 TCP/IP,并且使用了「请求 - 应答」的通信模式,所以性能的关键就在长连接管道网络传输

HTTP/1.1 的性能一般,后面的 HTTP/2 和 HTTP/3 都是在对 HTTP 进行性能优化。

长连接

在 HTTP/1.0 时代,每次请求都需要重新建立 TCP 连接,增加了通信的消耗。

为了尽可能利用已经建立好的连接,HTTP/1.1 提出了长连接的通信方式,只要任意一端没有明确提出断开连接,则保存 TCP 连接状态。

当某个长连接超出一定时间没有数据交互时,服务器会主动断开连接。

管道网络传输

管道机制就是运行客户端同时发送多个请求,不必等待前面请求的返回,可以减少整体的响应时间

服务器必须按照接受请求的顺序来处理管道化的请求,如果某个请求 A 的耗时比较长,后续的请求都会被阻塞,称为队头阻塞

HTTP/1.1 的管道机制解决了请求的队头阻塞,没有解决响应的对头阻塞

HTTP/1.1 管道技术不是默认开启的