每秒请求数很少,但会阻塞 Apache 并导致 CPU 激增

每秒请求数很少,但会阻塞 Apache 并导致 CPU 激增

我们有两个运行 HAProxy 的负载均衡器,它们为应用服务器提供请求。最近,我们收到了来自脚本小子对我们的基础设施进行漏洞检查的流量高峰。这只是一堆不存在的文件 (/phpMyAdmin) 的 GET 请求。它们只导致我们的应用服务器每秒收到 15-20 个请求,但 CPU 负载却飙升至 100%。有趣的是,我们通常每秒收到 10-15 个请求,这对我们来说没有问题。所以,我有点困惑,这些请求是如何造成如此大的损害的。

负载平衡器很乐意传递流量,但应用服务器却堵塞了,负载和 CPU 使用率飙升。我们希望得到一些建议——我们应该开始查看 Apache 配置,还是这些请求中有一些我们可以在负载平衡器级别阻止的独特之处?我觉得很奇怪,我们的正常请求以几乎相同的速率进入,但它们不会导致任何额外的 CPU 负载。

任何帮助都将受到赞赏。

答案1

有时数量并不重要质量-- 根据您的描述,您的自定义 404 页面显然对您的系统来说是一个负担,甚至生成的数量相对较少的此类页面也会破坏您的环境。

在这种情况下,您的选择是添加足够的服务器来处理该负载(昂贵),或者简化自定义 404 页面以减少生成它的麻烦 - 甚至可以使其成为静态的,而不是让 CMS 生成它(更具成本效益)。

相关内容