zoukankan      html  css  js  c++  java
  • 如何控制Yahoo! Slurp蜘蛛的抓取频度_国外博客资源站_百度空间

    如何控制Yahoo! Slurp蜘蛛的抓取频度_国外博客资源站_百度空间

    如何控制Yahoo! Slurp蜘蛛的抓取频度
    2009年08月13日 星期四 5:56

    上周末豆瓣的阿北给我电话:最近你们雅虎的蜘蛛(Yahoo! Slurp)对豆瓣网的抓取频度非常高,导致服务器的速度有些慢,如何才能让Slurp降低抓取频度呢?

    我首先想到的建议是在网站的robots.txt中增加Crawl-delay: 设置,这个设置是目前Slurp独有的,用来告诉Slurp蜘蛛2次访问之间的间隔,单位是秒。

    剩下的问题就是Crawl-delay的值该设置多大,这个要看网站自身可以承受的负载,假设你希望Slurp每10秒来访问一次,这个设置就是:

    User-agent: *

    Crawl-delay: 10

    我推荐使用 User-agent: * 万一有其他引擎逐步也支持这个配置呢,而不支持这个配置的引擎也会跳过这句。

    可实际上我从自己网站的日志中看到:Slurp的压力却不止10秒一次,原因是这样:雅虎美国和雅虎中国有2套蜘蛛在运行,因此实际的访问可能是这样:

    1.1.1.1 30/Jun/2006:00:00:03 Yahoo! Slurp China

    2.2.2.2 30/Jun/2006:00:00:04 Yahoo! Slurp

    1.1.1.1 30/Jun/2006:00:00:13 Yahoo! Slurp China

    每个蜘蛛都是遵循Crawl-delay间隔的,因此为了进一步降低Slurp压力,希望达到10秒一次请求的频道 实际的Crawl-delay配置就要*2。

    但是实际上我看到的雅虎的蜘蛛是分布在很多台服务器上的:而多个服务器集群之间也是不相互协调同一网站的抓取频度的

    1.1.1.1 30/Jun/2006:00:00:03 Yahoo! Slurp China

    2.2.2.2 30/Jun/2006:00:00:04 Yahoo! Slurp

    1.1.1.1 30/Jun/2006:00:00:13 Yahoo! Slurp China

    1.1.1.2 30/Jun/2006:00:00:13 Yahoo! Slurp China

    1.1.1.1 30/Jun/2006:00:00:23 Yahoo! Slurp China

    1.1.1.2 30/Jun/2006:00:00:27 Yahoo! Slurp China

    我统计了一下:Slurp来源于40多个IP网段,同网段内的蜘蛛协调抓取频度。因此:实际的Slurp设置,需要设置为10*40 = 400秒,才能达到期望的Slurp每10秒访问一次频度。

    给豆瓣推荐的Crawl-delay: 100 平均2.5秒访问一次,应该没有问题了。

    注:我查了一下Slurp的意思,就是咂吧嘴的声音,发音听着很像在吃面条吧?

  • 相关阅读:
    轨迹纠偏算法
    OpenStreetMap
    postgres create new super user
    postgis docker
    scala 命令台参数解析
    book
    Microsoft 365:OneDrive新特性,跨部门共享和协作
    2020年6月Microsoft 365 新功能速递
    Microsoft 365 解决方案:未经身份验证的用户上载文档小技巧 (2)
    Microsoft 365 解决方案:外部用户无法打开Microsoft Teams下录制的视频
  • 原文地址:https://www.cnblogs.com/lexus/p/2390154.html
Copyright © 2011-2022 走看看