我运行的是haproxy负载均衡器之后的第三方商业Web应用程序。 前一段时间,我开始看到http请求被重复,就像一个口吃 – 同样的请求会快速重复许多次,直到应用程序崩溃(因为会话机制无法应付)或拒绝服务攻击检测踢入和阻止IP。 networking服务器和负载均衡器都在虚拟机上; 负载均衡器运行在故障转移群集的一对redhat 6机器上,而后端是两台redhat 6机器。
重复似乎总是用于function而不是文件,通常不是来自会话中IP地址的第一个请求。
我看了很多可能性,几乎排除了这些可能性:
它似乎并不是恶意的,因为我们已经收到来自内部networking和外部IP(但不是来自本地子网)的这些重复请求。 从同一个IP地址开始,会话中的行为通常与普通stream量类似 – 而我们通过拒绝服务攻击检测来阻止合法stream量的可能性就是为什么我认为将其排除是非常重要的。
它似乎并不是错误版本的浏览器。 虽然我通过谷歌search发现,这可能会发生在旧版本的Safari,这些是主要的罪魁祸首,其他浏览器也出现在重复请求的日志文件。
这可能不是负载平衡器,因为重复的请求出现在haproxy日志中。 (我不完全确定这一点,因为我不知道何时在负载平衡过程中生成一个日志行)。
这不是虚拟基础架构,因为我们最近将服务从一个虚拟基础架构迁移到另一个虚拟基础架构,问题也一样。
第三方应用程序基本上是一个search工具,每天处理数千次search。 许多重复的请求是search请求,但是它们是非常小的百分比(大约每天一个),基本上相同的请求没有错误。 这也不是我们所在的客户邮件列表提出的问题,我们已经向卖方提及了这个问题,但是您不认为这是他们应用程序的错误。
如果有人想看,我可以提供日志logging,但是我不认为涉及的请求有什么特别之处,所以我认为这不太可能有帮助。
任何build议的原因或方式来诊断发生了什么非常感谢!
谢谢,西蒙