http connection为Keep-Alive模式下,当timeout或者max到了时,是由服务器断开,还是客户端断开?

HTTP/1.1 协议下,默认为Keep-Alive,当timeout或者max到了时,是由服务器主动断开,还是客户端猪主动断开呢?

阅读 2.5k
1 个回答

一般两端都会处理,以 Tomcat Server + Apache HttpClient 为例。

  • Keep-Alive到期后(max或者timeout),Tomcat 会关闭这个连接,代码在 Http11Processor
  • Apache HttpClient 也一样会处理,请求之后会检查 KeepAlive 状态,过期之后会丢弃这个连接,不再进行连接复用,代码在MainClientExec
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进