IIS:请求数超出其处理能力,服务器死机。如何修复?

IIS:请求数超出其处理能力,服务器死机。如何修复?

因此,我在 Windows Server 2008 R2 上安装了 IIS 7 Web 服务器(它也运行 ColdFusion 10,但这对于本文来说并不重要)。它运行得相当稳定,但我的流量本来就不大。

几个小时前,我开始每分钟稳定地获得 2-3k 的页面浏览量,这些页面都指向某个空白页面。这或多或少应该是这样的,不是 DDOS 攻击之类的,但它会完全关闭服务器。

我尝试为相关站点设置请求限制,但这没有帮助,似乎大量请求的存在就足以摧毁服务器。

虽然我有兴趣让服务器能够处理大量请求(如果您对如何做到这一点有一些了解,那就太好了),但现在最重要的是快速修复,即以某种方式使我的 IIS 对所有这些页面请求“免疫”。

有什么想法吗?提前致谢!

答案1

如果这不是 DDoS 攻击,那么它看起来就像是 DDoS 攻击。

我在这里要做的是使用 IIS AAR 在此之前设置一个反向代理。通常,这只会将请求传递给后端服务器,该服务器现在运行在一个奇怪的、未通过防火墙的端口上。然后,对于特定页面,我将在代理上设置一条规则,以仅返回错误请求。这可以很好地扩展,至少在您的网络端口带宽耗尽之前。

答案2

从您提供的信息很难说清楚——我想看看您的 IIS 日志和事件查看器中是否出现了任何有趣的东西,并获取有关硬件的更多信息——但我的猜测是,正如我上面所说的,“磁盘损坏”。当读取负载很大时,RAID 5 中的坏磁盘就会出现并锁定服务器。(当 LDAP 服务器备份时,我曾遇到过一所大学被“DOS 攻击”的情况——该服务器的管理员没有意识到他的一个磁盘坏了。人们打电话到我家而不是他家,因为我的服务依赖于他的服务。)

您在评论中说您的服务器运行在 SSD RAID 上。SSD 确实会不可预测地损坏,因此可能值得关注这一点。健康的 SSD RAID 和健康的服务器应该能够处理您提到的负载。

相关内容