0

我正在寻找有关我应该为我的爬虫提供多少资源(主要是 CPU 和 RAM)的迹象,以便能够每小时顺畅地抓取约 1M 页面。我在单个节点上运行所有内容并使用 ES 来实现持久性。我在 1 M 域内进行递归爬网。谢谢!

4

1 回答 1

0

在一般常见问题解答中,速度在很大程度上取决于主机名的多样性和礼貌设置。在您的情况下,不乏主机名,因此这不是限制。

使用 ES 作为后端,瓶颈往往是 spout 中的查询时间以及段的合并。随着您的爬网规模越来越大,这些需要越来越长的时间。您可以通过多种方式优化事物,例如使用 AggregationSpouts 进行采样。为 ES 提供大量 RAM 会有所帮助,使用 SSD 也会有所帮助。你可以调整各种参数,但老实说,在单个服务器上每小时 1M 的速度听起来非常雄心勃勃,因为 ES 作为后端。你爬得越快,你发现的 URL 越多,你的索引就越大。

您打算重新访问 URL 还是一次性抓取?

请问可以发邮件联系吗?我想讨论这个,因为它与我目前正在做的一些工作有关(我总是对人们对 SC 做了什么感到好奇)。谢谢。

于 2018-01-12T10:38:17.150 回答