Skip to content
登录后刷题更便捷

HTTP 的 keep-alive 是干什么的?

难度:

在早期的 HTTP/1.0 中,每次 http 请求都要创建一个连接,而创建连接的过程需要消耗资源和时间,为了减少资源消耗,缩短响应时间,就需要重用连接。在后来的 HTTP/1.0 中以及 HTTP/1.1 中,引入了重用连接的机制,就是在 http 请求头中加入 Connection: keep-alive 来告诉对方这个请求响应完成后不要关闭,下一次咱们还用这个请求继续交流。协议规定 HTTP/1.0 如果想要保持长连接,需要在请求头中加上 Connection: keep-alive。

keep-alive 的优点:

  • 较少的 CPU 和内存的使用(由于同时打开的连接的减少了)
  • 允许请求和应答的 HTTP 管线化
  • 降低拥塞控制 (TCP 连接减少了)
  • 减少了后续请求的延迟(无需再进行握手)
  • 报告错误无需关闭 TCP 连

内容仅供参考,难免有不恰当的地方,如果有问题欢迎及时反馈
部分内容来自网络,如果不慎侵犯您的权益,请联系我们,以便及时删除侵权内容