动态阻止过多使用HTTP带宽?


24

在6月4日的网络流量的仙人掌图上看到这一点,我们感到有些惊讶:

我们在IIS日志上运行了Log Parser,事实证明这是Yahoo和Google bot对我们进行索引的一次完美风暴。在这3个小时内,我们看到来自3个不同Google IP的287k命中,以及Yahoo的104k命中。哎哟?

虽然我们不想阻止Google或Yahoo,但以前已经出现过。我们可以访问Cisco PIX 515E,并且正在考虑将其放在前面,以便我们可以动态地应对带宽违规者,而无需直接接触我们的Web服务器。

但这是最好的解决方案吗?我想知道是否有任何软件或硬件可以帮助我们识别并阻止过多的带宽使用,理想情况下是实时的?也许我们可以在Web服务器之前放置一些硬件或开源软件?

我们主要是Windows商店,但我们也有一些Linux技能。如果PIX 515E不够用,我们也愿意购买硬件。你会推荐什么?

Answers:


23

如果您的PIX运行的是7.2版或更高版本的操作系统,或者可以升级到该版本,则可以在防火墙级别实施QOS策略。特别是,这可让您调整流量并应限制机器人使用的带宽。思科有一个良好的gudie这个位置


我对此答案的唯一问题是,发帖人不想阻止(或降级)Google或Yahoo,而是希望他们“爬网不错”。
KPWINC

1
QOS与阻塞无关。这就是Sam Cogan撰写的文章“应该允许您限制漫游器使用的带宽”的原因。
Piotr Dobrogost,2009年

9

我不确定yahoo,但您可以配置Google的漫游器为您的网站编制索引的频率。看看Google网站管理员。我不确定Yahoo是否有类似的东西。在任何情况下,您的流量都会减少多达50%。

另外,某些Web服务器可以限制每个连接的流量,因此您可以尝试这样做。我个人会远离硬件解决方案,因为它最有可能花费更多。


雅虎!有站点资源管理器。
Amok

9

减少爬网负载-仅适用于Microsoft和Yahoo。对于Google,您需要通过其网站站长工具(http://www.google.com/webmasters/)指定较慢的抓取速度。

实施此操作时请格外小心,因为如果您放慢抓取速度,机器人将无法访问您的所有网站,并且您可能会从索引中丢失页面。

以下是一些示例(这些都放在您的robots.txt文件中):

# Yahoo's Slurp Robot - Please wait 7 seconds in between visits

User-agent: slurp
Crawl-delay: 7

# MSN Robot - Please wait 5 seconds in between visits

User-agent: msnbot
Crawl-delay: 5

稍微偏离主题,但您也可以指定Sitemap或Sitemap索引文件。

如果您想为搜索引擎提供最佳URL的详尽列表,则还可以提供一个或多个Sitemap自动发现指令。请注意,用户代理不适用于此指令,因此您不能使用它来指定某些但不是全部搜索引擎的站点地图。

# Please read my sitemap and index everything!

Sitemap: http://yourdomain.com/sitemap.axd

4

我们使用了Watchguard防火墙(我们的X1000现已停产)。他们有很多功能围绕阻塞域或ip进行,这些域或IP一次又一次被看到或正在使用过多的带宽。

这将需要一些调整,因为您显然不想在stackoverflow上阻止Jon Skeet :)


3

我建议使用Microsoft ISA Server2006。具体针对此要求,默认情况下,每个IP限制为每分钟600个HTTP请求,并且您可以为Jon Skeet应用例外(对不起,我意识到“笑话”已经产生了! )。

您还具有应用程序级过滤的其他优点,能够跨多个Web服务器(而不是这些服务器上的NLB)进行负载平衡,VPN终止等功能。有许多商业扩展可用,如果您愿意,甚至可以编写自己的ISAPI过滤器你感觉很勇敢。

它显然不是开源的,但是对Windows商店有利,并且可以在商品硬件上运行。


这是最灵活的方法,以及Modifyig robots.txt
Jim B 2009年

谢谢。我同意需要为爬虫提供一些指导!
罗宾M 2009年

2

我们使用Foundry负载平衡器(特别是SI850)来处理此类整形问题,它还可以处理许多其他“讨厌的东西”,例如SYN-floods等。对于你们来说,这可能有些过头了。


2

Bluecoat(以前称为Packeteer)PacketShaper产品可以动态限制其管理流量的过度使用。


1

您甚至可以对具有任何体面容量/年份的任何常规Cisco路由器执行基本的速率限制。您是否在使用Cisco路由器?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.