gpt4 book ai didi

http - 为什么用户代理在服务器重置 TCP 后重新提交请求?

转载 作者:可可西里 更新时间:2023-11-01 02:30:58 24 4
gpt4 key购买 nike

我们最近注意到一个问题,即一些用户代理会重复相同的 POST 请求,而用户实际上并没有实际触发它两次。

经过进一步研究,我们注意到只有当请求通过我们的负载均衡器并且服务器需要很长时间来处理请求时才会发生这种情况。数据包捕获 session 最终显示负载均衡器在 5 分钟超时后通过向客户端发送 TCP 重置来断开连接;然而,客户端在没有用户干预的情况下自动重新提交了请求。

我们在 Java、Firefox 和 IE 8 的 Apache HTTP 客户端中观察到这种行为。(我无法安装其他浏览器来测试。)这让我觉得这种行为是 HTTP 标准的一部分,但这不是很容易谷歌.

此外,这似乎只有在第一个请求是通过保持事件的 TCP 连接提交时才会发生。

最佳答案

这是 HTTP 1.1 协议(protocol)的一部分,用于处理服务器过早关闭的连接。

http://www.w3.org/Protocols/rfc2616/rfc2616-sec8.html#sec8.2.4 .

我遇到过类似的情况,相同的表单在几毫秒内被发布了几次。

通过 wireshark 捕获的数据包确认了浏览器的重新传输,并且来自服务器的日志表明请求已到达。

此外,进一步的调查还显示,负载均衡器(如 F5)报告了重传行为的发生率。因此,也值得与您的负载均衡器供应商核实。

关于http - 为什么用户代理在服务器重置 TCP 后重新提交请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19816529/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com