首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用多个EC2实例爬行

使用多个EC2实例爬行
EN

Stack Overflow用户
提问于 2015-01-08 17:50:41
回答 1查看 1.1K关注 0票数 0

我用python编写了一个爬行过程,它运行在亚马逊上的一个ec2实例上。我已经编写了这个爬虫,这样它就可以用它的结果向一个单独的"hub“实例报告。集线器处理爬虫的结果,爬虫可以自由地继续爬行。我在这个爬行实例中想到的是,克隆爬虫的几个实例很容易,每个实例都要向中心报告以便处理。

因此,在这一点上,我有一个集线器和8个单独的爬行器(都在它们自己的实例上)不断地爬行和报告等等。

我在想用小的,分开的爬行器:

  1. 有冗余,所以如果一个爬虫被挂断,其余的爬虫可以继续工作。
  2. (这是一个假设)如果每个爬虫都有自己独立的ip,我就有更好的网络利用率。
  3. 我可以旋转几个爬虫或缩小规模取决于我目前的需求。

我的问题是,这样做有效率吗?我会更好地旋转一个更大的实例,并以某种方式分割网络利用率吗?

预先感谢您的投入。如果这不是堆叠溢出的话题,请原谅我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-08 20:32:49

我对你问题的看法。

(1)存在冗余,因此,如果一台履带机被挂断,其余的爬虫器就可以继续工作。

与自动缩放组一起设置以管理这些爬虫实例。

(2) (这是一个假设)如果每个爬虫都有自己独立的ip,我就有更好的网络利用率。

是的,如果在公共子网中创建的话,ec2实例可以拥有自己的公共和私有ip。在一个区域内,您可以设置为在不同的可用区域上启动实例(例如,美国-西部-2区域有三个AZs)。有了它,您就可以传播网络使用情况。

(3)根据我目前的需要,我可以旋转几个爬行器或缩小爬行器。

使用自动缩放组,您应该可以轻松地控制这个*。

我的问题是,这样做有效率吗?

*如果可以的话,在不同地区(美国、欧盟、亚洲等)设置ec2实例,以减少某些网站的延迟。*

我会更好地旋转一个更大的实例,并以某种方式分割网络利用率吗?

*在您的例子中,单独的较小的实例应该是一个更好的解决方案,它也为您节省了很多钱。也许您也可以考虑为这些爬虫使用。保存更多*

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27846439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档