当对代理的请求超时时,如果/当目标服务器最终响应时会发生什么?

时间:2015-10-07 03:22:34

标签: http tcp proxy gateway

我正在尝试诊断位于某些负载均衡器和代理后面的Web服务。在负载下,沿途的其中一台服务器开始返回HTTP 504错误,这表示网关超时。有了这个背景,这是我的问题:

当代理向目标服务器发出请求,并且目标服务器收到请求但没有及时响应(因此超过超时),导致504,当目标服务器 最终会回复吗?是否知道请求者不再对响应感兴趣?它是否愉快地发送响应而不知道网关已经将HTTP错误响应发送回客户端?任何见解都会非常感激。

1 个答案:

答案 0 :(得分:1)

它依赖于实现,但任何符合RFC 2616第8.1.2.1节的代理都应在504上包含Connection: close并关闭连接回客户端,以便它不再与已经失效的服务器连接返回的任何东西相关联,这也应该被关闭。在负载下,这种情况下可能存在竞争条件,因此您可能会查看代理中的错误。

如果客户端想要进一步请求,它将创建一个到代理的新连接,这将导致与后端的新连接。